컴퓨터는 여러 종류가 있다. 사실 컴퓨터는 일반적으로 정보를 처리하는 도구이다. 튜링기 이론에 따르면 가장 기본적인 기능을 갖춘 컴퓨터는 다른 컴퓨터가 할 수 있는 모든 일을 할 수 있어야 한다. 따라서 시간과 저장 요인에 관계없이 모든 PDA (Personal Digital Assistant) 와 수퍼컴퓨터는 같은 작업을 수행할 수 있어야 합니다. 같은 컴퓨터를 설계해도 회사 임금 관리에서 무인우주선 통제에 이르기까지 다양한 임무에 써야 한다는 얘기다. 과학기술의 급속한 발전으로 차세대 컴퓨터는 항상 성능면에서 선배를 크게 능가할 수 있으며, 이를' 무어의 법칙' 이라고도 한다.
컴퓨터는 구성에 있어서 서로 다른 형식을 가지고 있다. 초기 컴퓨터는 집만큼 컸지만, 오늘날 일부 임베디드 컴퓨터는 포커보다 작을 수 있다. 물론 오늘날에도 대규모 조직을 위해 특별한 과학 컴퓨팅 또는 트랜잭션 요구 사항을 제공하는 거대한 수퍼컴퓨터가 여전히 많이 있습니다. 개인용 어플리케이션을 위해 설계된 비교적 작은 컴퓨터를 마이크로컴퓨터 또는 줄여서 마이크로컴퓨터라고 합니다. 우리가 오늘날의 일상생활에서' 컴퓨터' 라는 단어를 사용할 때, 우리는 보통 이 점을 언급한다. 그러나, 현재 컴퓨터의 가장 일반적인 응용 형식은 임베디드 것이다. 임베디드 컴퓨터는 일반적으로 비교적 간단하고 크기가 작으며 항공기, 산업용 로봇, 디지털 카메라 등 다른 장비를 제어하는 데 사용됩니다.
위의 전자 컴퓨터 정의에는 계산 가능하거나 제한된 기능을 갖춘 많은 특수 장비가 포함됩니다. 그러나 현대 전자 컴퓨터의 가장 중요한 특징은 모든 전자 컴퓨터가 올바른 지시 (전자 컴퓨터 자체의 저장 능력과 실행 속도에 의해서만 제한됨) 만 주면 다른 모든 컴퓨터의 동작을 시뮬레이션할 수 있다는 것입니다. 따라서, 현대 전자 컴퓨터는 이전 전자컴퓨터에 비해 일반 전자컴퓨터라고도 불린다.
역사
ENIAC 는 컴퓨터 발전사의 이정표이다. 영어 단어 "computer" 는 원래 데이터 계산에 종사하는 사람을 가리킨다. 그리고 그들은 종종 기계 계산 장치나 아날로그 컴퓨터를 사용해야 한다. 이러한 초기 컴퓨팅 장비의 조상은 주판과 안티아 퀴틀라 매커니즘을 포함해서 기원전 87 년으로 거슬러 올라갈 수 있으며, 고대 그리스인들은 행성 운동을 계산하는 데 사용되었다. 중세 말기 수학과 공학이 유럽에서 다시 번영함에 따라 윌리엄 시카드 (Wilhelm Schickard) 는 1623 년 유럽 최초의 컴퓨팅 장비를 개발해 6 자리 이내의 숫자를 더하고 벨소리를 통해 답을 출력할 수 있는' 계산시계' 다. 회전 기어로 작업합니다.
1642 년 프랑스 수학자 파스칼은 윌리엄 오트레드의 기초 위에서 계산자를 개선하여 8 자리 계산을 할 수 있었다. 그것은 또한 많은 상품을 팔아 당시의 패션 상품이 되었다.
180 1 년, Joseph Marie Jacquard 는 복잡한 패턴을 짜기 위한 프로그램으로 일련의 천공 종이 카드를 사용하는 베틀의 디자인을 개선했습니다. 자카드 직기는 실제 컴퓨터로 여겨지지는 않지만, 그 출현은 확실히 현대 컴퓨터 발전의 중요한 단계이다.
찰스. 바비치는 1820 년 처음으로 컴퓨터를 구상하고 설계한 사람이다. 그러나 기술 조건, 자금 제한, 참을 수 없는 디자인 수리로 인해 이 컴퓨터는 평생 나오지 않았다. 19 세기 말까지, 천공 카드와 진공관을 포함하여 컴퓨터 과학에 중요한 것으로 입증된 많은 기술들이 잇따르고 있다. 헤르만 홀레스 (Hermann Hollerith) 는 천공 카드를 이용하여 대규모 자동 데이터 처리를 가능하게 하는 시계용 기계를 설계했다.
20 세기 전반기에는 과학 컴퓨팅의 요구를 충족시키기 위해 점점 더 복잡해지는 단일 용도의 아날로그 컴퓨터가 많이 개발되었습니다. 이러한 컴퓨터는 해당 컴퓨터가 지향하는 특정 문제를 기반으로 하는 기계 또는 전자 모델입니다. 1930 년대와 1940 년대에는 컴퓨터의 성능이 더욱 강해지고 공통성이 향상되었으며 현대 컴퓨터의 핵심 기능이 증가하고 있습니다.
65438-0937 년 클로드 엘우드 섀넌 (Claude Elwood Shannon) 은 그의 위대한 논문' 릴레이 및 스위치 회로의 기호 분석' 을 발표했는데, 이 중 처음으로 디지털 전자 기술의 응용을 언급했다. 그는 사람들에게 스위치를 사용하여 논리와 수학 연산을 실현하는 방법을 보여 주었다. 이후 그는 베니발 부시의 미분시뮬레이터를 연구함으로써 자신의 생각을 더욱 공고히 했다. 이것은 이진 전자 회로 설계와 논리 문 응용의 시작을 표시하는 중요한 순간이다. 이러한 핵심 사상의 탄생의 선구자로서, 논리 문이 포함된 장치에 특허를 출원한 알몬 스단조 (Almon Strowger) 가 포함되어야 한다. 니콜라스? 니콜라 테슬라는 일찍이 1898 에서 논리문이 있는 회로 설비를 신청했다. 드 포레스터, 1907 에서 그는 릴레이 대신 진공관을 사용했다.
80 년대 Commodore 에서 생산한 Amiga 500 컴퓨터는 이렇게 긴 여정을 따라 이른바' 첫 번째 전자 컴퓨터' 를 정의하는 것은 상당히 어렵다. 194 1 12 년 5 월 콘래드 추저는 그의 기계장비' Z3' 을 완성했습니다. 이것은 자동 이진 수학 계산과 실행 가능한 프로그래밍 기능을 갖춘 최초의 컴퓨터이지만' z3' 은 아닙니다 또한, 다른 주목할만한 업적은 주로 194 1 년 여름에 태어난 Atanasov-Berry 컴퓨터로, 진공관 계산기, 이진 값 및 재사용 가능한 스토리지를 사용하는 세계 최초의 전자 컴퓨터입니다. 1943 년 영국에서 전시된 신비로운 거상 컴퓨터는 진공관 사용은 믿을 만하고 전기화 재프로그래밍을 할 수 있다는 것을 확실히 알려준다. 비록 프로그래밍 능력은 극히 제한적이지만. 하버드 마크 1 세 하버드 대학의 그리고 바이너리 기반 "eniac" (eniac, 1944) 은 범용 컴퓨터이지만 구조 설계가 유연하지 않아 매번 다시 프로그래밍할 때마다 전기와 물리적 회로를 다시 연결하는 것을 의미합니다.
Eneike 를 개발한 팀은 결함을 더욱 개선하기 위해 디자인을 개선했으며, 결국 오늘날 우리가 잘 알고 있는 폰 노이만 구조 (프로그램 스토리지 아키텍처) 를 선보였습니다. 이 시스템은 오늘날 모든 컴퓨터의 기초이다. 1940 년대 중후반, 이 시스템을 기반으로 한 많은 컴퓨터가 개발되기 시작했는데, 그중에서도 영국이 처음이다. 개발 및 운영에 투입된 첫 번째 기계는 SSEM (소형 실험기) 이지만 실제로 개발된 실용기계는 EDSAC 일 가능성이 높다.
1950 년대 내내 진공관 컴퓨터가 주도권을 잡았다. 1958 년 9 월 2 일, 로버트 노이스 (인텔사 창업자) 의 지도 아래 집적 회로가 발명되었다. 얼마 지나지 않아 마이크로프로세서가 출시되었습니다. 1959 와 1964 사이에 설계된 컴퓨터를 일반적으로 2 세대 컴퓨터라고 합니다.
1960 년대에 트랜지스터 컴퓨터가 대체했습니다. 트랜지스터는 더 작고, 더 빠르고, 저렴하고, 더 안정적이어서 상업화할 수 있습니다. 1964 부터 1972 까지의 컴퓨터를 일반적으로 3 세대 컴퓨터라고 합니다. 집적 회로를 대량으로 사용하며, 일반적인 모델은 IBM360 시리즈입니다.
1970 년대에 집적 회로 기술의 도입으로 컴퓨터의 생산 비용이 크게 절감되면서 컴퓨터가 수많은 가구로 접어들기 시작했다. (윌리엄 셰익스피어, 윈스턴, 집적 회로, 집적 회로, 집적 회로, 집적 회로, 집적 회로, 집적 회로) 1972 이후의 컴퓨터는 습관적으로 4 세대 컴퓨터라고 불린다. 대규모 집적 회로 및 이후 초대형 집적 회로를 기반으로 합니다. 1972 4 월 1 일 인텔은 8008 마이크로프로세서를 출시했습니다. 1976 스티븐 워즈나크와 스티븐 잡스가 애플 컴퓨터 회사를 설립했다. 애플 I 컴퓨터를 출시했습니다. 1977 애플 2 세대 컴퓨터 5 월 출시. 1979 6 월 1 일 인텔은 8 비트 8088 마이크로프로세서를 출시했습니다.
65438 년부터 0982 년까지 마이크로컴퓨터가 보급되어 학교와 가정에 대량으로 들어갔다. 1982 65438+ 10 월 Commodore 64 컴퓨터 출시, 판매 가격: 595 달러. 1982 2 월 80286 출시. 클럭 주파수가 20MHz 로 높아져 보호 모드가 추가되어 16M 메모리에 액세스할 수 있습니다. 1GB 이상의 가상 메모리를 지원합니다. 초당 270 만 개의 명령을 실행하고 134000 개의 트랜지스터를 통합합니다.
1990165438+10 월: 1 세대 MPC (멀티미디어 PC 표준) 출시. 프로세서는 최소 80286/ 12MHz 이상 80386SX/ 16 MHz 로 증가했으며 옵티컬 드라이브 전송 속도는 최소 150 KB/ s 이상입니다. 1994 10 6 월 10 일 인텔은 75 MHz 펜티엄 프로세서를 발표했습니다. 1 995165438+10 월1펜티엄 프로 출시. 최대 200 MHz 의 클럭 속도, 초당 4 억 4 천만 개의 명령어, 550 만 개의 트랜지스터 통합. 1997 65438+ 10 월 8 일 인텔은 펜티엄 MMX 를 발표했습니다. 게임과 멀티미디어 기능이 향상되었습니다.
이후 컴퓨터가 나날이 새로워지면서 1965 년에 발표된 무어의 법칙은 앞으로 10~ 15 년에도 예언이 여전히 적용된다는 것을 끊임없이 증명하고 있다.
원칙
Pc 의 주요 구조:
표시기
메인보드
중앙처리장치
기본 스토리지
확장 카드
전원 공급 장치
광 디스크 드라이브
보조 스토리지 (하드 드라이브)
건반
쥐
1940 년대 최초의 전자 범용 컴퓨터가 탄생한 이래 컴퓨터 기술이 급속히 발전해 왔지만, 오늘날의 컴퓨터는 여전히 기본적으로 스토리지 프로그램 구조인 폰 노이만 구조를 채택하고 있다. 이 구조는 실용적인 범용 컴퓨터를 실현했다.
저장 프로그램 구조는 컴퓨터를 산술 논리 장치 (ALU), 제어 회로, 메모리 및 입/출력 장치 (I/O) 의 네 가지 주요 부분으로 설명합니다. 이러한 컴포넌트는 플랫 케이블 세트 (특히 와이어 세트가 서로 다른 의도의 데이터 전송에 사용될 경우 버스라고도 함) 로 연결되고 시계에 의해 구동됩니다 (물론 일부 다른 이벤트도 제어 회로를 구동할 수 있음).
개념적으로 컴퓨터의 메모리는' 세포' 그룹으로 볼 수 있다. 각 "세포" 에는 주소라는 번호가 있습니다. 작은 고정 길이 정보를 저장할 수 있습니다. 이 정보는 명령어 (컴퓨터에 무엇을 하는지 알려주는 명령) 또는 데이터 (명령어의 처리 대상) 일 수 있습니다. 원칙적으로 각 "셀" 은 둘 중 하나를 저장할 수 있습니다.
산술 논리 단위 (ALU) 는 컴퓨터의 뇌라고 불릴 수 있다. 두 가지 연산을 할 수 있습니다. 첫 번째는 두 숫자의 더하기와 빼기와 같은 산술 연산입니다. ALU 에서 산술 연산자의 역할은 매우 제한적입니다. 실제로 일부 alu 는 회로 수준의 곱셈 및 나눗셈을 전혀 지원하지 않습니다 (사용자가 프로그래밍을 통해서만 곱셈 및 나눗셈을 수행할 수 있기 때문). 두 번째는 비교 연산입니다. 즉, 주어진 두 개의 숫자, ALU 를 비교하여 어느 것이 더 큰지 결정합니다.
입/출력 시스템은 컴퓨터가 외부 정보를 받고 계산 결과를 외부에 피드백하는 수단이다. 표준 개인용 컴퓨터의 경우 입력 장치는 주로 키보드와 마우스이고 출력 장치는 모니터, 프린터 및 컴퓨터에 연결할 수 있는 기타 많은 I/O 장치입니다.
제어 시스템은 위의 컴퓨터의 모든 부분을 연결합니다. 이 기능은 메모리 및 입/출력 장치에서 명령어와 데이터를 읽고, 명령을 디코딩하고, 명령어 요구 사항을 충족하는 올바른 입력을 ALU 에 전달하고, ALU 에 해당 데이터를 처리하는 방법과 결과 데이터를 반환하는 방법을 알려주는 것입니다. 제어 시스템의 중요한 부품은 현재 지침의 주소를 기록하는 카운터입니다. 일반적으로 이 카운터는 명령이 실행될 때 누적되지만, 때때로 명령이 점프를 지시한 경우 이 규칙을 따르지 않습니다.
1980 년대 이후 ALU 와 제어 장치 (둘 다 CPU (중앙 처리 장치) 에 통합 됨) 는 마이크로프로세서라는 집적 회로에 점차 통합되었습니다. 이 컴퓨터의 작동 모드는 매우 직관적입니다. 즉, 한 클럭 주기 동안 컴퓨터는 먼저 메모리에서 명령과 데이터를 가져온 다음 명령을 실행하고 데이터를 저장한 후 다음 명령을 얻습니다. 종료 명령을 받을 때까지 이 과정을 반복합니다.
컨트롤러의 설명에 따르면 컴퓨팅 단위에서 실행되는 명령 세트는 매우 제한된 수의 잘 정의된 간단한 명령 세트입니다. 일반적으로 1), 데이터 이동 (예: 스토리지 유닛 a 에서 스토리지 유닛 b 로 숫자 복사) 2), 수 및 논리 연산 (예: 스토리지 유닛 a 와 스토리지 유닛 b 의 합계를 계산하고 결과를 스토리지 유닛 c 로 반환) 3), 조건 검증 (예: 스토리지 유닛 a 의 숫자 값이
지시문은 데이터와 마찬가지로 컴퓨터에서 이진수로 표시됩니다. 예를 들어 10 1 10000 은 Intel x86 마이크로프로세서의 복제 명령 코드입니다. 컴퓨터가 지원하는 명령 집합은 컴퓨터의 기계 언어입니다. 따라서 인기 있는 기계 언어를 사용하면 이미 구축된 소프트웨어를 새 컴퓨터에서 쉽게 실행할 수 있습니다. 따라서 상용 소프트웨어를 개발하는 사람들에게는 보통 하나 이상의 다른 기계 언어에만 집중한다.
더 강력한 소형 컴퓨터, 대형 컴퓨터 및 서버는 위의 컴퓨터와 다를 수 있습니다. 일반적으로 다른 CPU 와 작업을 공유하여 수행됩니다. 오늘날 마이크로프로세서와 멀티코어 PC 도 이 방향으로 발전하고 있습니다.
수퍼컴퓨터는 일반적으로 기본 아카이버 컴퓨터와는 확연히 다른 아키텍처를 가지고 있다. 일반적으로 수천 개의 CPU 가 있지만 이러한 설계는 특정 작업에만 유용한 것 같습니다. 다양한 컴퓨터 중 일부 마이크로컨트롤러는 하버드 아키텍처를 사용하여 프로그램과 데이터를 분리합니다.
컴퓨터 디지털 회로 구현
이러한 개념 설계의 물리적 구현은 다양합니다. 앞서 언급했듯이 아카이버 컴퓨터는 기계적이거나 디지털 전자일 수 있습니다. 디지털 회로는 전자 제어 릴레이와 같은 스위치를 통해 이진수를 사용하는 산술 및 논리 연산을 수행할 수 있습니다. 향농의 논문은 우리에게 릴레이를 배열하여 간단한 부울 연산을 실현할 수 있는 논리문을 형성하는 방법을 보여 주었을 뿐이다. 다른 학자들은 곧 진공관이 릴레이 회로를 대체할 수 있다고 지적했다. 진공관은 원래 무선 회로에서 증폭기로 사용되었고, 나중에는 디지털 전자 회로의 빠른 스위치로 점점 더 많이 사용되기 시작했다. 전자관의 한 핀에 전기가 들어오면 전류는 다른 두 끝 사이에서 자유롭게 흐를 수 있다.
논리문의 배열과 조합을 통해 우리는 많은 복잡한 임무를 설계하고 완성할 수 있다. 예를 들어, 가산기가 그 중 하나입니다. 이 장치는 전자 분야의 두 숫자를 더하고 결과를 보존합니다. 컴퓨터 과학에서는 일련의 연산을 통해 특정 의도를 달성하는 방법을 알고리즘이라고 합니다. 마지막으로, 사람들은 상당한 수의 논리문을 통해 완전한 ALU 와 컨트롤러를 성공적으로 조립했다. 상당한 숫자입니다. CSIRAC 를 보면 알 수 있습니다. 가장 작은 유틸리티 튜브 컴퓨터일 수 있습니다. 기계에는 2000 개의 전자관이 포함되어 있는데, 그 중 많은 부분이 이중 용도 부품이다. 즉 총 2000 개에서 4000 개의 논리 부품이 있다.
진공관은 분명히 대규모 도어 회로를 만들 수 없다. 비싸고, 불안정하고 (특히 대량 배치), 비대하고, 에너지 소비량이 높고, 속도가 빠르지는 않지만, 기계 스위치 회로를 훨씬 능가하지만. 이 모든 것들이 1960 년대에 트랜지스터로 대체되었습니다. 후자는 부피가 작고, 조작이 편리하고, 안정성이 높으며, 에너지 효율이 높고, 비용이 저렴합니다.
집적 회로는 오늘날의 전자 컴퓨터의 기초입니다. 1960 년대 이후 트랜지스터는 점차 집적 회로로 대체되기 시작했고, 집적 회로는 대량의 트랜지스터, 기타 각종 전자 부품 및 연결선을 실리콘 판에 올려놓았다. 1970 년대에 ALU 와 컨트롤러는 CPU 의 두 부분으로' 마이크로프로세서' 라는 하나의 칩에 통합되기 시작했다. 집적 회로의 역사를 따라, 우리는 칩에 통합 장치의 수가 급속히 증가하는 것을 볼 수 있다. 첫 번째 집적 회로에는 수십 개의 구성 요소만 포함되어 있으며 2006 년에는 인텔 코어™ 듀오 프로세서 하나에 트랜지스터 수가 1.5 1 억 개에 달했다.
전자관, 트랜지스터, 집적 회로 모두 트리거 설계 메커니즘을 사용하여 스토리지 프로그램 아키텍처의 "저장" 구성요소로 사용할 수 있습니다. 실제로 트리거는 소규모 초고속 스토리지로 사용됩니다. 그러나 대규모 데이터 저장을 위해 트리거를 사용하는 컴퓨터 설계는 거의 없습니다. 가장 오래된 컴퓨터는 윌리엄스 전자관을 사용하여 전자빔을 TV 화면이나 수은 지연선 (음파 전파 속도가' 저장' 으로 간주될 정도로 느림) 으로 전송한 다음 읽습니다. 물론, 이러한 효과적이고 우아하지 않은 방법들은 결국 자기 저장으로 대체되었다. 예를 들어, 코어 메모리, 정보를 나타내는 전류는 철 재료에 영구적인 약한 자기장을 생성할 수 있으며, 이 자기장이 다시 읽히면 데이터 복구가 가능합니다. 동적 랜덤 액세스 메모리 (DRAM) 도 발명되었습니다. 데이터 전하를 저장하는 데 사용되는 대량의 콘덴서를 포함하는 집적 회로입니다. 전하의 강도는 데이터의 값으로 정의됩니다.
입출력 장치
입출력 장치 (I/O) 는 외부에서 컴퓨터로 정보를 보내는 장치와 처리 결과를 외부로 반환하는 장치의 총칭입니다. 이러한 반환된 결과는 사용자가 직관적으로 경험하거나 컴퓨터가 제어하는 다른 장치에 대한 입력일 수 있습니다. 즉, 한 로봇의 경우 제어 컴퓨터의 출력은 기본적으로 로봇 자체입니다. 예를 들어, 다양한 동작을 합니다.
1 세대 컴퓨터의 입력 및 출력 장치 유형은 매우 제한적입니다. 일반적인 입력 장치는 천공 카드가 있는 카드 리더기로, 명령어와 데이터를 메모리에 입력하는 데 사용됩니다. 결과를 저장하는 데 사용되는 출력 장치는 일반적으로 테이프입니다. 과학기술이 발전함에 따라 입출력 설비의 풍부함이 향상되었다. 개인용 컴퓨터의 경우 키보드와 마우스는 사용자가 컴퓨터에 직접 정보를 입력하는 주요 도구이며 모니터, 프린터, 스피커 및 헤드폰은 처리 결과를 반환합니다. 또한 이미지를 가져올 수 있는 디지털 카메라와 같은 다른 종류의 정보를 수용할 수 있는 많은 입력 장치가 있습니다. 입/출력 장치에는 두 가지 유형이 있습니다. 첫 번째 범주는 하드 드라이브, 광 디스크 또는 기타 속도가 느리지만 용량이 큰 장치와 같은 보조 저장 장치입니다. 두 번째는 컴퓨터 네트워크 액세스 장치로, 이 장치를 통해 컴퓨터 간의 직접 데이터 전송은 컴퓨터의 가치를 크게 높인다. 오늘날 인터넷을 통해 수천만 대의 컴퓨터가 서로 다양한 유형의 데이터를 전송할 수 있게 되었습니다.
프로그램
간단히 말해서, 컴퓨터 프로그램은 컴퓨터가 실행하는 일련의 지시이다. 간단한 작업을 수행하는 몇 가지 지침 또는 대량의 데이터를 조작하는 복잡한 명령 대기열일 수 있습니다. 많은 컴퓨터 프로그램에는 수백만 개의 지침이 포함되어 있으며 그 중 많은 부분이 중복될 수 있습니다. 2005 년에는 전형적인 개인용 컴퓨터가 초당 약 30 억 개의 명령을 실행할 수 있었습니다. 컴퓨터는 일반적으로 추가 기능을 얻기 위해 복잡한 명령을 실행하지 않으며, 프로그래머의 일정에 따라 간단하지만 많은 수의 짧은 명령을 실행하는 경우가 많습니다.
일반적으로 프로그래머는 컴퓨터 언어로 컴퓨터에 직접 명령을 쓰지 않는다. 이렇게 한 결과는 단지 시간이 많이 걸리고, 힘들고, 비효율적이고, 허점이 많을 뿐이다. 따라서 프로그래머는 일반적으로 "고급" 언어로 프로그램을 작성한 다음 인터프리터 또는 컴파일러와 같은 특수 컴퓨터 프로그램을 기계 언어로 번역합니다. 일부 프로그래밍 언어는 어셈블리 언어와 같은 기계 언어와 비슷해 보이며 저급 언어로 간주됩니다. Prolog 와 같은 다른 언어는 컴퓨터의 실제 작동 세부 사항을 완전히 무시하고 고급 언어라고 할 수 있습니다. 특정 작업의 경우 트랜잭션 특성, 프로그래머 기술, 사용 가능한 도구 및 고객 요구 사항에 따라 적절한 언어를 선택해야 합니다. 여기서 고객 요구 사항은 가장 중요합니다 (미국과 중국의 엔지니어링 프로젝트에는 일반적으로 Ada 언어가 필요합니다).
컴퓨터 소프트웨어는 컴퓨터 프로그램과 같지 않은 또 다른 단어이다. 컴퓨터 소프트웨어는 작업을 완료하는 데 사용되는 다양한 프로그램과 모든 관련 자료를 포함하는 포용성이 더 강한 기술 용어입니다. 예를 들어, 비디오 게임에는 프로그램 자체뿐만 아니라 가상 게임 환경을 만들기 위한 사진, 사운드 및 기타 데이터 콘텐츠도 포함되어 있습니다. 소매 시장에서, 컴퓨터의 한 가지 앱은 많은 사용자들에게 단지 소프트웨어의 복사본일 뿐이다. (알버트 아인슈타인, 컴퓨터명언) 여기서 진부한 예는 물론 마이크로소프트의 office 소프트웨어 그룹이며, 여기에는 일반적인 사무실 요구를 충족시키는 일련의 상호 연관된 프로그램이 포함되어 있습니다.
매우 간단한 기계 언어 지시로 수많은 강력한 응용 프로그램을 구현하는 것은 프로그래밍 규모가 매우 클 수밖에 없다는 것을 의미한다. (존 F. 케네디, 컴퓨터명언) Windows XP 는 4 천만 줄의 C++ 고급 언어 소스 코드가 포함된 운영 체제 프로그램입니다. 물론, 이것은 아직 가장 큰 것이 아니다. 이렇게 방대한 소프트웨어 규모도 개발 과정에서 관리의 중요성을 보여준다. 실제 프로그래밍에서는 프로그램이 각 프로그래머가 허용 가능한 시간 내에 완성할 수 있는 크기로 세분화됩니다.
그럼에도 불구하고 소프트웨어 개발 과정은 여전히 느리고, 예측할 수 없고, 누락으로 가득 차 있다. 시대의 요구에 따라 소프트웨어 공사는 어떻게 업무 진도를 가속화하고 효율성과 품질을 높일 수 있는지에 초점을 맞추고 있다.
라이브러리 및 운영 체제
컴퓨터가 탄생한 지 얼마 안 되어, 일부 작업은 여러 가지 다른 프로그램에서 수행되어야 한다는 것을 알게 되었습니다. 예를 들어, 일부 표준 수학 함수를 계산하는 것과 같습니다. 효율성을 높이기 위해 이러한 프로그램의 표준 버전은 각 프로그램에서 호출할 수 있는 "라이브러리" 로 수집됩니다. 많은 작업에서 다양한 입력 및 출력 인터페이스를 처리해야 하는 경우가 많습니다. 이때 연결을 위한 라이브러리가 도움이 될 수 있습니다.
1960 년대에 컴퓨터 산업화가 보편화되면서 컴퓨터는 조직 내 다양한 업무를 처리하는 데 점점 더 많이 사용되었다. 곧 작업 지속과 실행을 자동으로 예약할 수 있는 특수 소프트웨어가 등장했다. 하드웨어를 제어하고 작업 일정을 담당하는 이러한 소프트웨어를 "운영 체제" 라고 합니다. 초기 운영 체제의 한 가지 예는 IBM OS/360 입니다.
지속적으로 개선되는 과정에서 운영 체제는 시분할 메커니즘인 동시성을 도입했다. 이렇게 하면 모든 사용자가 자신의 컴퓨터를 가지고 있는 것처럼 여러 사용자가 이 시스템을 사용하여 동시에 자신의 프로그램을 실행할 수 있습니다. 이를 위해 운영 체제는 각 사용자에게 "가상 시스템" 을 제공하여 서로 다른 프로그램을 분리해야 합니다. 운영 체제 제어가 필요한 장치가 많아지고 있기 때문에 그 중 하나가 하드 드라이브입니다. 따라서 운영 체제는 파일 관리 및 디렉토리 관리 (폴더) 도 도입하여 이러한 영구 스토리지 디바이스의 애플리케이션을 크게 단순화합니다. 또한 운영 체제는 사용자가 허용된 파일만 액세스할 수 있도록 보안 제어를 담당합니다.
물론 지금까지 운영 체제 개발의 마지막 중요한 단계는 프로그램에 표준 그래픽 사용자 인터페이스 (GUI) 를 제공하는 것입니다. 기술적인 이유는 운영 체제가 이러한 인터페이스를 제공해야 한다는 것을 의미하지만 운영 체제 공급업체는 항상 해당 시스템에서 실행되는 소프트웨어가 모양과 동작 특성상 운영 체제와 일치하거나 유사하도록 권장하고 있습니다.
이러한 핵심 기능 외에도 운영 체제는 다양한 기타 공통 도구를 캡슐화합니다. 일부는 컴퓨터 관리에 큰 의미가 없지만 사용자에게 유용합니다. 예를 들어 애플의 Mac OS X 에는 비디오 편집 응용 프로그램이 포함되어 있습니다.
일부 소형 컴퓨터의 운영 체제는 이렇게 다재다능한 것을 사용하지 않을 수도 있다. 메모리와 처리 능력이 제한되어 있기 때문에 초기 마이크로컴퓨터는 추가 기능을 제공하지 않았지만 임베디드 컴퓨터는 전용 운영 체제를 사용하거나 전혀 사용하지 않았습니다. 그들은 종종 응용 프로그램을 통해 운영 체제의 일부 기능을 직접 표현한다.
앱 앱
컴퓨터로 제어되는 기계는 공업에서 매우 보편적이다.
퍼비와 같은 현대의 많은 장난감들은 값싼 임베디드 프로세서와 불가분의 관계에 있습니다.
처음에는 거대하고 값비싼 디지털 컴퓨터가 주로 과학 컴퓨팅, 특히 군사 프로젝트에 사용되었다. 예를 들어, ENIAC 는 포병 탄도 단면의 중성자 밀도를 계산하는 데 최초로 사용되었으며 수소 폭탄을 설계했습니다 (오늘날 많은 수퍼컴퓨터는 모의 핵 실험에서 여전히 큰 역할을 하고 있음). CSIR Mk I 는 오스트레일리아에서 설계한 최초의 저장 프로그램 컴퓨터로 수력발전 프로젝트 유역의 강우 상황을 평가하는 일을 담당하고 있습니다. 영국의' 거상' 프로그래머블 컴퓨터와 같은 암호 해독을 위한 다른 것들. 이러한 초기 과학이나 군사 응용 외에도 컴퓨터는 다른 분야에서도 광범위하게 응용된다.
처음부터 아카이버 컴퓨터는 비즈니스 문제 해결과 밀접한 관련이 있었다. IBM 의 첫 상용 컴퓨터가 탄생하기 전에 영국의 J. Lyons 등은 자산 관리 또는 기타 상업적 목적을 위해 LEO 를 설계했다. 지속적인 양과 비용 통제로 인해 컴퓨터는 소규모 조직으로 보급되기 시작했다. 게다가 1970 년대 마이크로프로세서의 발명으로 값싼 컴퓨터가 현실이 되었다. 1980 년대에는 개인용 컴퓨터가 널리 보급되면서 전자 문서 쓰기 인쇄, 예산 계산 등 반복적인 보고서 작업이 컴퓨터에 점점 더 의존하기 시작했다.
컴퓨터가 점점 싸짐에 따라 창의적인 예술 작품이 그것들을 사용하기 시작했다. 합성기, 컴퓨터 그래픽 및 애니메이션을 사용하여 사운드, 이미지 및 비디오를 만들고 수정합니다. 비디오 게임의 산업화는 또한 컴퓨터가 오락 방면에서 새로운 역사를 창조했다는 것을 보여준다.
컴퓨터가 소형화된 이후 기계 설비의 제어도 컴퓨터의 지원에 의존하기 시작했다. 사실, 아폴로 우주선을 제어할 수 있을 만큼 작은 임베디드 컴퓨터를 구축하는 것이 집적 회로 기술의 도약을 자극했다. 오늘날, 컴퓨터로 제어되지 않는 능동적인 매커니즘을 찾는 것은 심지어 부분적으로 컴퓨터로 제어되는 장치를 찾는 것보다 훨씬 더 어렵다. 아마도 가장 유명한 컴퓨터 제어 장치는 인간의 외모와 인간의 행동의 하위 집합을 어느 정도 가지고 있는 로봇일 것이다. (존 F. 케네디, 컴퓨터명언) 대규모 생산에서, 공업 로봇은 이미 평범해졌다. 그러나 완전히 의인화된 로봇은 여전히 공상 과학 소설이나 실험실에만 존재한다.
로봇 기술은 본질적으로 인공지능 분야의 물리적 표현 고리이다. 인공지능이란 모호한 개념이지만, 이 학과는 컴퓨터가 아직 갖추지 못했지만 인류의 고유 능력으로 인정받고 있다는 것은 확실하다. (알버트 아인슈타인, 컴퓨터명언) (윌리엄 셰익스피어, 인공지능, 인공지능, 인공지능, 인공지능, 인공지능, 지능명언) 수년 동안, 많은 새로운 방법이 개발되어 컴퓨터들이 이전에 인간만이 할 수 있다고 생각했던 일을 할 수 있게 되었다. (존 F. 케네디, 컴퓨터명언) 예를 들어 책을 읽고 바둑을 두다. 그러나 지금까지 인간의 일반적인' 전체' 지능을 갖춘 컴퓨터 개발의 진전은 여전히 매우 느리다.
인터넷, 인터넷
1950 년대 이래로 컴퓨터는 여러 곳에서 정보를 조정하는 도구로 사용되어 왔습니다. 미군의 세이지는 이 분야 최초의 대규모 시스템이다. 이후' 사버' 와 같은 전용 비즈니스 시스템도 등장했다.
1970 년대 이후 미국 대학의 컴퓨터 엔지니어들은 통신 기술을 사용하여 컴퓨터를 연결하기 시작했다. 이 작업은 ARPA 가 후원하기 때문에 컴퓨터 네트워크를 ARPANET 이라고도 합니다. 이후 ARPA 네트워크가 사용하는 기술이 급속도로 확산되고 진화해 대학과 군대의 범위를 돌파해 오늘날의 인터넷을 형성했다. 네트워크의 출현으로 인해 컴퓨터 속성과 경계가 재정의되었습니다. 태양마이크로시스템사의 존 게이지와 빌 조이는 "인터넷은 컴퓨터다" 고 지적했다. 컴퓨터 운영 체제와 응용 프로그램은 네트워크의 다른 컴퓨터와 같은 네트워크 리소스에 액세스하는 방향으로 발전하고 있습니다. 처음에는이 네트워크 장치가 하이 엔드 과학자들에게만 사용되었지만, 1990 년대 이후, 이메일과 월드 와이드 웹 기술의 대중화, 이더넷과 ADSL 과 같은 네트워크 연결 기술의 저렴한 가격으로 인터넷은 어디에나 있습니다. 왜 오늘 수천만 대의 컴퓨터가 인터넷에 연결되어 있습니까? 무선 연결 기술이 보급됨에 따라 모바일 컴퓨팅 환경에서의 인터넷도 그 뒤를 이었다. 예를 들어 노트북에서 널리 사용되는 Wi-Fi 기술은 무선 인터넷의 대표적인 응용이다.
차세대 컴퓨터
디지털 컴퓨터가 등장한 이래로 속도와 능력이 크게 향상되었으며, 지금까지도 현재 컴퓨터의 능력을 뛰어넘는 주제가 많이 남아 있습니다. 이러한 문제들 중 일부의 경우, 해결책을 찾는 데 걸리는 시간이 문제의 규모를 따라잡지 못하기 때문에 기존 컴퓨터는 어쨌든 실현될 수 없다. 따라서 과학자들은 이러한 문제를 해결하기 위해 바이오 컴퓨팅 기술과 양자 이론으로 눈을 돌리기 시작했다. 예를 들어, 사람들은 특정 문제 (DNA 계산) 를 해결하기 위해 생물학적 처리를 사용할 계획입니다. 세포 분열의 지수 증가로 인해 DNA 컴퓨팅 시스템은 같은 규모의 문제를 해결할 수 있을 가능성이 높다. 물론, 이러한 시스템은 DNA 의 통제 가능한 총량으로 직접 제한됩니다.
양자 컴퓨터는 이름에서 알 수 있듯이 양자 물리 세계의 비범한 특징을 이용한다. 양자 컴퓨터를 만들 수 있게 되면, 그 속도가 높아지면 일반 컴퓨터가 따라올 수 없게 된다. (존 F. 케네디, 컴퓨터명언) 물론 암호학과 양자물리학 시뮬레이션을 포함하는 이 차세대 컴퓨터는 아직 구상 단계일 뿐이다.
컴퓨터과학
오늘날 세계에서 거의 모든 전공은 컴퓨터와 밀접한 관련이 있습니다. 그러나 일부 전공과 학과에서만 컴퓨터 자체의 제조, 프로그래밍 및 사용 기술을 연구합니다. 컴퓨터 과학에서 다른 연구 분야를 설명하는 데 사용되는 학술 용어의 의미는 끊임없이 변화하고 있으며, 새로운 학과가 끊임없이 등장하고 있다.
컴퓨터 공학은 전자 공학의 한 분야로, 주로 컴퓨터 소프트웨어와 하드웨어, 그리고 그것들 사이의 관계를 연구한다.
컴퓨터 과학은 컴퓨터 학술 연구의 전통적인 이름이다. 이 글은 주로 특정 임무를 수행하는 컴퓨팅 기술과 효율적인 알고리즘을 연구한다. 이 주제는 컴퓨터 분야에서 문제를 해결할 수 있는지 여부를 결정합니다. 예를 들어, 효율성, 보다 효율적인 절차를 만드는 방법 등이 있습니다. 지금까지 컴퓨터 과학에는 이미 많은 가지가 생겨났고, 각 분기는 서로 다른 유형의 문제에 대해 심도 있는 연구를 진행했다.
소프트웨어 엔지니어링은 고품질의 소프트웨어 시스템을 개발하는 방법론과 실습에 초점을 맞추고 개발 비용과 개발 주기를 압축하고 예측하려고 합니다.
정보 시스템은 광범위한 조직 환경 (주로 상업) 에서 컴퓨터 응용 프로그램을 연구합니다.
많은 학과가 다른 학과와 얽혀 있다. 예를 들어, 지리 정보 시스템 전문가는 컴퓨터 기술을 사용하여 지리 정보를 관리합니다.
세계에서 컴퓨터 과학에 힘쓰는 대형 조직은 영국 컴퓨터학회 (BCS) 입니다. 미국 컴퓨터 협회 (ACM); 미국 전기 전자 기술자 협회 (IEEE).