컴퓨터과학의 역사

History of computer science

컴퓨터 과학의 역사보통 수학이나 물리학과 같은 형태로 나타나는 컴퓨터 과학의 현대 학문보다 훨씬 이전에 시작되었습니다.이전 세기의 발전은 우리가 현재 컴퓨터 [1]과학으로 알고 있는 학문을 암시했습니다.기계적 발명과 수학적 이론에서 현대 컴퓨터 개념과 기계에 이르기까지 이 발전은 주요 학문 분야의 발전, 서구 세계에 걸친 거대한 기술 발전, 거대한 세계 무역과 [2]문화의 기초로 이어졌습니다.

선사시대

로그를 발명한 존 네이피어 (1550–1617)

계산에 사용된 최초의 알려진 도구는 기원전 2700년에서 2300년 사이[3]수메르에서 개발된 주판이었습니다.수메르인의 주판은 그들의 60진법 [4]: 11 체계의 연속적인 순서를 구분하는 연속적인 열들의 표로 구성되었습니다.원래의 사용법은 모래에 조약돌로 선을 그은 것이었습니다.더 현대적인 디자인의 주판은 오늘날에도 중국[5]주판과 같이 계산 도구로 사용됩니다.

기원전 5세기 고대 인도에서 문법학자 파치니는 아슈타디야이(Ashtadhyayi)로 알려진 3959개의 규칙에서 산스크리트어의 문법을 만들었으며 매우 체계적이고 기술적이었습니다.파니니는 메타 규칙, 변환[6]재귀를 사용했습니다.

안티키테라 메커니즘은 초기 기계식 아날로그 [7]컴퓨터로 추정됩니다.그것은 천문학적인 위치를 계산하기 위해 고안되었습니다.그것은 1901년 그리스의 안티키테라 섬에서 떨어진 키테라와 크레타 사이의 안티키테라 난파선에서 발견되었고 기원전 [7]100년경으로 거슬러 올라갑니다.

기계식 아날로그 컴퓨터 장치는 1,000년 후 중세 이슬람 세계에서 다시 등장했으며 아부 레이한 [8]바뤼뉴기계식 장치 아스트롤라베와 자비르 이븐 [9]아플라의 토크룸과 같은 이슬람 천문학자들에 의해 개발되었습니다.사이먼 싱에 따르면, 이슬람 수학자들은 암호 분석과 알킨더스에 의한 빈도 분석의 발전과 같은 암호학에서도 [10][11]중요한 발전을 이루었다고 합니다.프로그래밍이 가능한 기계들은 바누 무사 [12]형제에 의해 자동 플루트 연주기와 같은 무슬림 기술자들에 의해 발명되기도 했습니다.

비슷한 복잡한 기술적 유물들이 기계적인 천문 [13]시계와 함께 14세기 유럽에서 나타났습니다.

네이피어가 17세기 [14]초에 계산 목적의 로그를 발견했을 때, 계산 도구를 만드는 데 있어서 발명가들과 과학자들에 의해 상당한 발전이 있었습니다.1623년 빌헬름 쉬카르트는 계산기를 설계했지만 [15]1624년 그가 만들기 시작한 원형이 화재로 소실되었을 때 프로젝트를 포기했습니다.1640년경, 프랑스의 선도적인 수학자인 블레즈 파스칼은 그리스 수학자 알렉산드리아의 [16]영웅이 묘사한 설계도를 바탕으로 기계적 덧셈 장치를 만들었습니다.그리고 1672년 고트프리트 빌헬름 라이프니츠는 1694년에 [17]완성한 계단식 계산기를 발명했습니다.

1837년 찰스 배비지는 현대 컴퓨터의 최초 디자인으로 받아들여지는 그의 분석 엔진을 처음으로 설명했습니다.분석 엔진은 확장 가능한 메모리, 산술 유닛, 루프와 조건부 분기를 가진 프로그래밍 언어를 해석할 수 있는 논리 처리 능력을 가지고 있었습니다.설계는 만들어지지 않았지만 광범위하게 연구되어 튜링과 동등한 것으로 이해되고 있습니다.해석 엔진은 메모리 용량이 1킬로바이트 미만이고 클럭 속도가 10헤르츠 [18]미만일 것입니다.

최초의 현대 컴퓨터가 설계되기 전에 수학과 전자 이론의 상당한 발전이 요구되었습니다.

이진 논리

고트프리트 빌헬름 라이프니츠

고트프리트 빌헬름 라이프니츠 (1646–1716)는 이진수 체계에서 논리를 개발했고 "컴퓨터 [19]과학의 창시자"라고 불려왔습니다.

1702년, 고트프리트 빌헬름 라이프니츠는 이진법에 대한 그의 저술로 형식적이고 수학적인 의미의 논리를 발전시켰습니다.라이프니츠는 이진 시스템을 단순화하고 접속사, 접속사, 접속사, 부정사, 동일성, 포함, 빈 [20]집합과 같은 논리적 속성을 명료화했습니다.그는 라그랑주 보간법알고리즘 정보 이론을 예측했습니다.그의 미적분학적 비율 측정기는 보편적인 튜링 기계의 측면을 예측했습니다.1961년, 노버트 위너는 라이프니츠가 사이버네틱스[21]수호성인으로 여겨져야 한다고 제안했습니다.위너는 "실제로 컴퓨팅 머신에 대한 일반적인 생각은 라이프니츠의 미적분학 [22]Ratiocinator의 기계화에 불과합니다."라고 인용했습니다.하지만 조지 부울이 1854년에 계산 과정이 수학적으로 [23]모델링될 수 있도록 하는 완전한 시스템을 갖춘 부울 대수를 발표하기까지 1세기 이상이 걸렸습니다.

이 무렵, 이진 패턴에 의해 구동되는 최초의 기계 장치들이 발명되었습니다.산업혁명은 많은 일들의 기계화를 촉진시켰고, 여기에는 직조가 포함되었습니다.1801년에 구멍 뚫린 카드는 조셉 마리 자카드의 베틀을 제어했는데, 카드에 구멍이 뚫린 것은 이진법의 하나를 가리키고, 뚫리지 않은 은 이진법의 0을 나타냅니다.Jacquard의 직기는 컴퓨터와는 거리가 멀었지만,[23] 그것은 기계가 이진 시스템으로 구동될 수 있다는 것을 보여주었습니다.

규율의 출현

컴퓨터 공학의 선구자 중 한 명인 찰스 배비지 (1791–1871)

찰스 배비지와 에이다 러브레이스

찰스 배비지(Charles Babbage)는 종종 컴퓨팅의 최초 선구자 중 한 명으로 여겨집니다.1810년대부터 배비지는 기계적으로 숫자와 표를 계산하는 비전을 가지고 있었습니다.배비지는 이를 현실화하기 위해 소수점 8개까지의 숫자를 계산할 수 있는 계산기를 설계했습니다.이 아이디어의 성공으로 배비지는 소수점 20자리까지 숫자를 계산할 수 있는 기계를 개발하기 위해 노력했습니다.1830년대까지 배비지는 산술 연산을 수행하기 위해 천공 카드를 사용할 수 있는 기계를 개발할 계획을 세웠습니다.기계는 숫자를 메모리 단위로 저장하고, 순차적으로 제어하는 형태가 될 것입니다.이는 기계가 응답을 생성하고 실패하지 않는 방식으로 한 작업이 다른 작업보다 먼저 수행된다는 것을 의미합니다.이 기계는 "분석 엔진"으로 알려지게 되었는데, 이것은 현대 [24]컴퓨터의 첫번째 진정한 표현이었습니다.

Ada Lovelace (1815–1852)는 상징적인 조작에 컴퓨터의 사용을 예측했습니다.

아다 러브레이스(Augusta Ada Byron)는 컴퓨터 프로그래밍의 선구자로 인정받으며 수학 천재로 여겨집니다.러브레이스는 찰스 배비지와 보조로 일하기 시작했고 배비지는 최초의 기계 [25]컴퓨터인 "분석 엔진"을 작업했습니다.배비지와 함께 일하는 동안, 에이다 러브레이스는 베르누이 [26]수를 계산할 수 있는 능력을 가진 최초의 컴퓨터 알고리즘의 설계자가 되었습니다. 비록 이것은 찰스가 차분 엔진과 그에 상응하는 차분 기반 알고리즘을 설계한 최초의 컴퓨터 알고리즘 설계자였기 때문에 논쟁의 여지가 있지만, 이것은 그를 최초의 컴퓨터 알고리즘 설계자로 만들었습니다.게다가, 배비지와 함께 한 러브레이스의 연구는 수학적 계산을 수행할 뿐만 아니라 수학적이든 [27]아니든 기호를 조작하는 미래의 컴퓨터에 대한 그녀의 예측 결과를 낳았습니다.그녀는 평생 동안 "해석적 엔진"이 만들어지지 않았기 때문에 그녀의 연구 결과를 결코 볼 수 없었지만, 1840년대부터 시작된 그녀의 말년의 노력은 [28]눈에 띄지 않았습니다.

초기 포스트 해석 엔진 설계

Leonardo Torres Quevedo (1852–1936)는 부동 소수점 숫자를 저장하는 일관된 방식을 제안했습니다.

배비지의 뒤를 이어 아일랜드 더블린에 있는 옥수수 상인의 점원인 퍼시 러드게이트가 있었습니다.그는 [29][30]1909년에 출판된 작품에서 설명한 프로그래밍이 가능한 기계식 컴퓨터를 독자적으로 설계했습니다.

다른 두 발명가인 레오나르도 토레스 케베도와 바네바르 부시도 배비지의 연구를 바탕으로 한 연구를 수행했습니다.토레스는 1914년 의 자동화에 관한 에세이(Assays on Automatics)에서 읽기 전용 프로그램에 의해 제어되는 해석적 전기기계 기계를 설계하고 부동 소수점 [31][32][33]산술의 아이디어를 소개했습니다.1920년, 산술계 발명 100주년을 기념하기 위해 그는 파리에서 (원격일 가능성이 있는) 타자기에 연결된 산술 장치로 구성된 전기기계 산술계를 발표했는데, 이 장치에서 명령을 입력하고 결과를 [34]자동으로 출력할 수 있었습니다.부시의 논문 Instrumental Analysis(1936)는 기존 IBM 펀치 카드 머신을 사용하여 배비지의 디자인을 구현하는 것에 대해 논의했습니다.같은 해에 그는 전자 디지털 [35]컴퓨터를 만드는 문제를 조사하기 위해 Rapid Arithmetical Machine 프로젝트를 시작했습니다.

찰스 샌더스 피어스 및 전기 스위칭 회로

찰스 샌더스 피어스(Charles Sanders Peirce, 1839–1914)는 어떻게 논리 연산이 전기 스위칭 회로에 의해 수행될 수 있는지 설명했습니다.

찰스 샌더스 피어스는 1886년 편지에서 어떻게 논리 연산이 전기 스위칭 [36]회로에 의해 수행될 수 있는지 설명했습니다.1880-81년 동안 그는 NOR 게이트 단독(또는 NAND 게이트 단독)을 사용하여 다른 모든 논리 게이트의 기능을 재현할 수 있음을 보여주었지만,[37] 이 연구는 1933년까지 출판되지 않았습니다.최초로 출판된 증거는 Henry M에 의해서였습니다. 1913년의 셰퍼(Shefer)는 NAND 논리 연산을 셰퍼 스트로크(Shefer stroke)라고 부르기도 합니다. 논리 NOR는 Peirce'[38]s arrow라고 불리기도 합니다.따라서 이러한 게이트를 유니버셜 논리 [39]게이트라고 부르기도 합니다.

결국, 진공관이 논리 연산을 위한 릴레이를 대체했습니다.1907년 리 포레스트가 플레밍 밸브를 수정한 것은 논리 게이트로 사용될 수 있습니다.루트비히 비트겐슈타인(Ludwig Wittgenstein)은 Tractatus Logico-Philosophicus(1921)의 명제 5.101로 16행 진리표의 버전을 소개했습니다.우연 회로의 발명가인 발터 보테는 1924년에 최초의 현대 전자와 게이트로 1954년 노벨 물리학상의 일부를 받았습니다.콘라드 쥐세는 1935년부터 1938년까지 자신의 컴퓨터 Z1을 위한 전자기계 논리 게이트를 설계하고 제작했습니다.

1930년대까지 전기 기술자들은 수학과 논리 문제를 해결하기 위해 전자 회로를 만들 수 있었지만 대부분은 이론적 엄격함이 결여된 임시방편으로 그렇게 했습니다.이것은 1930년대에 스위칭 회로 이론으로 바뀌었습니다.1934년부터 1936년까지 나카시마 아키라, 클로드 샤넌, 빅토르 셰타코프는 두 값의 부울 대수가 스위칭 [40][41][42][43]회로의 동작을 설명할 수 있다는 일련의 논문을 발표했습니다.전기 스위치의 특성을 활용하여 논리를 수행하는 이 개념은 모든 전자 디지털 컴퓨터의 기본 개념입니다.스위칭 회로 이론은 현대 [43]기술의 거의 모든 분야에서 디지털 시스템 설계를 위한 수학적 기초와 도구를 제공했습니다.

학부 시절 철학 수업을 듣는 동안 샤넌은 부울의 연구를 접했고, 논리 문제를 해결하기 위해 전기 기계 릴레이를 배열하는 데 사용될 수 있다는 것을 알게 되었습니다.그의 논문은 제2차 [44]세계대전 중과 후에 전기공학계에서 널리 알려지게 되면서 실용적인 디지털 회로 설계의 기초가 되었습니다.

알란 튜링과 튜링 기계

앨런 튜링, 영국의 컴퓨터 과학자, 수학자, 논리학자, 암호 분석가.(1930년경)

1920년대 이전에는 컴퓨터(때로는 컴퓨터)가 계산을 수행하는 인간 점원이었습니다.그들은 보통 물리학자의 지도 아래 있었습니다.수많은 컴퓨터들이 상업, 정부 및 연구 기관에서 사용되었습니다.인간의 컴퓨터 역할을 했던 사무원들 중 많은 [45][46][47][48]사람들이 여성들이었습니다.어떤 사람들은 달력을 위해 천문학적인 계산을 했고,[49] 다른 사람들은 군대를 위해 탄도표를 만들었습니다.

1920년대 이후, 표현 계산기는 인간 컴퓨터의 작업을 수행하는 모든 기계, 특히 Church-Turing 논문의 효과적인 방법에 따른 기계를 가리켰습니다.논문은 수학적 방법이 종이와 연필을 가진 인간 점원이 필요한 한 오랫동안 그리고 기발함이나 통찰력 없이 따라 할 수 있는 지시의 목록으로 제시될 수 있다면 효과적이라고 말합니다.

연속적인 값으로 계산한 기계는 아날로그 종류로 알려지게 되었습니다.그들은 축 회전의 각도나 전위차와 같은 연속적인 숫자의 양을 나타내는 기계를 사용했습니다.

디지털 기계는 아날로그와는 달리 숫자 값의 상태를 렌더링하고 각 개별 숫자를 저장할 수 있었습니다.디지털 기계는 더 빠른 메모리 장치를 발명하기 전에 차이 엔진이나 릴레이를 사용했습니다.

컴퓨팅 머신이라는 용어는 1940년대 후반 이후 전자 디지털 기계의 출현이 보편화되면서 점차 컴퓨터로만 자리를 내주게 되었습니다.이 컴퓨터들은 이전의 인간 사무원들이 수행했던 계산을 수행할 수 있었습니다.

디지털 기계가 저장한 값이 아날로그 장치와 같은 물리적 특성에 구속되지 않았기 때문에, 디지털 장비에 기반한 논리적 컴퓨터는 "순수하게 기계적"이라고 설명할 수 있는 모든 것을 할 수 있었습니다.앨런 튜링이 만든 이론적 튜링 머신은 그러한 하드웨어의 특성을 연구하기 위해 이론화된 가상의 장치입니다.

현대 컴퓨터 과학의 수학적 기초는 쿠르트 괴델에 의해 불완전성 정리(1931)로 세워지기 시작했습니다.이 정리에서, 그는 공식적인 체계 안에서 증명되고 반증될 수 있는 것에는 한계가 있다는 것을 보여주었습니다.이것은 Gödel과 다른 사람들이 mu-recursive function과 lambda-definable [50]function과 같은 개념을 포함하여 이러한 공식적인 시스템을 정의하고 설명하는 작업으로 이어졌습니다.

1936년 앨런 튜링과 알론조 처치는 독립적으로, 또한 함께 알고리즘의 공식화를 도입하였는데,[51] 계산할 수 있는 것에 대한 제한과 계산을 위한 "순수한 기계적" 모델을 도입했습니다.이것은 전자 컴퓨터와 같은 기계적 계산 장치의 성격에 대한 가설인 Church-Turing 논문이 되었습니다.이 논문은 충분한 시간과 저장 공간이 [51]확보된다면 컴퓨터에서 실행되는 알고리즘으로 가능한 모든 계산을 수행할 수 있다고 말합니다.

1936년, 앨런 튜링은 현재 단순히 유니버셜 튜링 기계라고 불리는 추상적인 디지털 컴퓨팅 기계인 튜링 기계에 대한 그의 중요한 연구를 출판하기도 했습니다.이 기계는 현대 컴퓨터의 원리를 발명했고 거의 모든 현대 컴퓨터가 [52]사용하는 저장 프로그램 개념의 탄생지였습니다.이러한 가상 머신은 컴퓨팅 능력에 대한 제한을 고려하여 공식적으로 계산할 수 있는 것을 수학적으로 결정하도록 설계되었습니다.튜링 기계가 작업을 완료할 수 있다면, 튜링은 계산 가능한 [53]것으로 간주됩니다.

로스앨러모스물리학자 스탠리 프랭클(Stanley Frankel)은 1936년 튜링의 논문의 근본적인 중요성에 대한 존 폰 노이만(John von Neumann)의 견해를 다음과 같이 [52]편지로 설명했습니다.

1943년 또는 1944년쯤 폰 노이만이 1936년 튜링 논문의 중요성을 잘 알고 있었다는 것을 알고 있습니다. 폰 노이만은 그 논문을 저에게 소개해주었고 저는 그의 재촉에 그것을 신중하게 연구했습니다.많은 사람들이 폰 노이만을 "컴퓨터의 아버지"(현대적인 의미에서)라고 칭송했지만, 저는 그가 결코 그 실수를 하지는 않았을 것이라고 확신합니다.아마 조산사라고 불릴 수도 있겠지만, 그는 나에게 단호하게 강조했고, 다른 사람들에게도 근본적인 개념은 튜링 덕분이라고 확신합니다.

John V. Atanasoff (1903–1995)는 Atanasoff–Berry 컴퓨터로 알려진 최초의 전기 디지털 컴퓨터를 만들었습니다.

초기 컴퓨터 하드웨어

세계 최초의 전자 디지털 컴퓨터인 Atanasoff-Berry 컴퓨터는 1939년부터 1942년까지 존 5세에 의해 아이오와 주 캠퍼스에서 만들어졌습니다. 물리학과 수학 교수인 아타나소프공학 대학원생인 클리포드 베리.

1941년, 콘라드 쥐세는 세계 최초의 기능적인 프로그램 제어 컴퓨터인 Z3를 개발했습니다.1998년에는 원칙적으로 [54][55]튜링이 완전한 으로 나타났습니다.Zuse는 최초의 프로세스 제어 컴퓨터로 여겨지는 S2 컴퓨팅 머신도 개발했습니다.그는 1941년에 세계 최초의 상업용 컴퓨터가 된 Z4를 생산하면서 초기 컴퓨터 사업체 중 하나를 설립했습니다.1946년 그는 최초의 고급 프로그래밍 언어인 플랑칼ü을 고안했습니다.

1948년, 맨체스터 베이비가 완성되었습니다; 그것은 거의 모든 현대의 [52]컴퓨터들처럼 기억에 저장된 프로그램들을 실행하는 세계 최초의 전자 디지털 컴퓨터였습니다.튜링 머신에 대한 1936년 튜링의 중요한 논문의 Max Newman의 영향과 프로젝트에 대한 그의 논리수학적 기여는 [52]둘 다 아기의 성공적인 개발에 결정적이었습니다.

1950년, 영국의 국립 물리학 연구소는 튜링의 철학을 바탕으로 한 소규모 프로그램 가능 컴퓨터인 파일럿 ACE를 완성했습니다.1 MHz의 작동 속도를 가진 파일럿 모델 ACE는 한동안 [52][57]세계에서 가장 빠른 컴퓨터였습니다.ACE를 위한 Turing의 설계는 오늘날의 RISC 아키텍처와 많은 공통점을 가지고 있으며 초기 Macintosh 컴퓨터와 거의 동일한 용량의 고속 메모리를 필요로 했습니다. 이는 그의 [52]시대 기준으로 볼 때 엄청났습니다.튜링의 ACE가 계획대로 완전히 구축되었다면 다른 초기 [52]컴퓨터들과는 다른 리그에 속했을 것입니다.

클로드 섀넌(Claude Shannon, 1916–2001)은 정보 이론 분야를 창조하는 것을 도왔습니다.

최초의 실제 컴퓨터 버그는 나방이었습니다.그것은 하버드 마크 [58]2의 릴레이 사이에 끼여있었습니다."버그"라는 용어의 발명은 종종 그러나 잘못 알려진 것으로, 1945년 9월 9일에 "버그"를 기록한 것으로 추정되는 미래의 미 해군 소장 그레이스 호퍼에 기인하지만, 대부분의 다른 설명들은 적어도 이러한 세부사항들과 상충됩니다.이 설명에 따르면 실제 날짜는 1947년 9월 9일로, 운영자들이 이 곤충과 "처음 발견된 버그의 실제 사례"라는 표기와 함께 "이 사건"을 제출했습니다(자세한 [58]내용은 소프트웨어 버그 참조).

섀넌과 정보이론

클로드 섀넌(Claude Shannon)은 1948년 A Mathematical Theory of Communication이라는 제목의 논문으로 정보 이론 분야를 설립했는데, 이 논문은 송신자가 전송하고자 하는 정보를 어떻게 가장 잘 부호화하는지에 대한 문제에 확률 이론을 적용했습니다.이 작업은 데이터 압축 [59]암호화포함한 많은 연구 분야의 이론적 토대 중 하나입니다.

노버트 위너(1894–1964)는 사이버네틱스라는 용어를 만들었습니다.

와이너 및 사이버네틱스

적의 비행기를 탐지하기 위해 레이더 이미지를 해석하는 대공 시스템의 실험으로부터 노버트 위너는 그리스어로 "조종사"라는 단어에서 사이버네틱스라는 용어를 만들었습니다.그는 1948년 인공지능에 영향을 준 "사이버네틱스"를 출판했습니다.위너는 또한 컴퓨터,[60] 컴퓨터 기계, 기억 장치, 그리고 다른 인지적 유사점들을 그의 뇌파 분석과 비교했습니다.

존 폰 노이만 (1903–1957)은 폰 노이만 아키텍처로 알려진 컴퓨터 아키텍처를 소개했습니다.

존 폰 노이만과 폰 노이만 건축

1946년, 컴퓨터 아키텍처의 모델이 소개되었고 폰 노이만 아키텍처로 알려지게 되었습니다.1950년 이후 폰 노이만 모델은 이후의 컴퓨터 디자인에 통일성을 제공했습니다.폰 노이만 아키텍처는 기계 명령과 데이터가 메모리 [61]공간을 공유할 수 있도록 하는 아이디어를 도입했기 때문에 혁신적인 것으로 여겨졌습니다.폰 노이만 모델은 산술논리장치(ALU), 메모리, 명령처리장치(IPU) 등 크게 세 부분으로 구성돼 있습니다.폰 노이만 기계 설계에서 IPU는 주소를 메모리로 전달하고, 명령을 가져올 때는 IPU로, 데이터를 [62]가져올 때는 ALU로 다시 라우팅됩니다.

폰 노이만의 기계 설계는 RISC([dubious ]Reduced instruction set computing) 아키텍처를 사용하는데, 이는 명령어 집합이 모든 작업을 수행하기 위해 총 21개의 명령어를 사용한다는 것을 의미합니다.(이것은 CISC, 복잡한 명령어 집합 컴퓨팅, 명령어 집합에서 선택할 명령어가 더 많은 것과는 대조적입니다.)폰 노이만 구조에서는 주 메모리와 어큐뮬레이터(논리 [63]연산의 결과를 저장하는 레지스터)가 두 개의 메모리입니다.연산은 간단한 연산(ALU에서 수행되며 덧셈, 뺄셈, 곱셈, 나눗셈을 포함함), 조건부 분기(지금은 더 일반적으로 다음과 같이 보임)로 수행할 수 있습니다.if성명서나while고리. 가지들은 다음과 같은 역할을 합니다.go tostatements), 그리고 기계의 서로 다른 구성 요소 간의 논리적 이동, 즉 누산기에서 메모리로 또는 그 반대로 이동합니다.폰 노이만 아키텍처는 분수와 명령을 데이터 유형으로 받아들입니다.마지막으로 폰 노이만 아키텍처는 단순하기 때문에 레지스터 관리도 간단합니다.이 아키텍처는 가져온 데이터와 명령을 조작하고 해석하기 위해 7개의 레지스터 세트를 사용합니다.이러한 레지스터에는 "IR"(명령어 레지스터), "IBR"(명령어 버퍼 레지스터), "MQ"(승수 몫 레지스터), "MAR"(메모리 주소 레지스터) 및 "MDR"(메모리 데이터 레지스터)[62]이 포함됩니다.아키텍처는 또한 프로그램 카운터("PC")를 사용하여 프로그램 내의 기계 [62]위치를 추적합니다.

John McCarthy (1927–2011)는 인공지능의 창시자 중 한 명으로 여겨집니다.

존 맥카시, 마빈 민스키 그리고 인공지능

인공지능이라는 용어는 존 맥카시(John McCarthy)가 다트머스 섬머 리서치(Dartmouth Summer Research)의 제안을 위해 수행하고 있는 연구에 대해 설명한 것입니다.인공지능이라는 이름이 붙으면서 컴퓨터 [64]과학의 새로운 분야가 탄생하기도 했습니다.1955년 8월 31일 존 맥카시, 마빈 L. 민스키, 나타니엘 로체스터, 클로드 E로 구성된 연구 프로젝트가 제안되었습니다. 섀넌.공식적인 프로젝트는 1956년에 시작되었는데, 그들이 인공지능의 구성을 더 잘 이해하는 데 도움이 될 것이라고 생각하는 몇 가지 중요한 부분들로 구성되어 있었습니다.

자동 컴퓨터 뒤에 숨겨진 McCarthy와 그의 동료들의 생각은 기계가 어떤 일을 완성할 수 있는 동안, 그리고 원하는 결과를 수행하기 위한 프로그램을 컴파일함으로써 컴퓨터로 같은 것을 확인해야 합니다.그들은 또한 인간의 뇌가 기계 자체가 아니라 프로그램에 의해서 복제하기에는 너무 복잡하다는 것을 발견했습니다.정교한 프로그램을 만들 수 있는 지식은 아직 없었습니다.

이를 뒷받침하는 개념은 인간이 우리 고유의 언어와 우리가 문장을 형성하는 구조를 어떻게 이해하는지 살펴보고, 서로 다른 의미와 규칙 집합을 부여하고 이를 기계적 과정에 비교하는 것이었습니다.컴퓨터가 이해할 수 있는 방법은 하드웨어 수준입니다.이 언어는 이진법(1과 0)으로 작성됩니다.특정 하드웨어 조각을 실행할 [65]수 있는 규칙 집합을 컴퓨터에 제공하는 특정 형식으로 작성해야 합니다.

민스키의 과정은 어떻게인공신경망들이 인간의 뇌와 비슷한 특성을 갖도록 배열될 수 있는지를 결정했습니다.하지만, 그는 부분적인 결과만 낼 수 있었고 이 아이디어에 대한 연구를 더 진행할 필요가 있었습니다.

이 이론의 배경에 있는 McCarthy와 Shannon의 생각은 복잡한 문제를 사용하여 수학 이론과 [66]계산통해 기계의 효율을 결정하고 측정하는 방법을 개발하는 것이었습니다.하지만, 그들은 부분적인 테스트 결과만 받았습니다.

자기 개선 뒤에 숨겨진 아이디어는 기계가 스스로를 더 똑똑하게 만들기 위해 어떻게 자기 수정 코드를 사용할 것인가 하는 것입니다.이를 통해 기계는 지능이 증가하고 계산 [67]속도가 향상될 수 있습니다.연구팀은 기계가 연구의 추상화 부분에서 작업을 완료하는 과정을 개선할 수 있다면 이를 연구할 수 있다고 믿었습니다.

이 그룹은 이 범주의 연구를 더 작은 그룹으로 나눌 수 있다고 생각했습니다.이것은 인공지능에 대한 감각적인 정보와 다른 형태의 정보로 구성될 것입니다.컴퓨터 과학의 추상화는 수학과 프로그래밍 [68]언어를 의미할 수 있습니다.

컴퓨터 창의성에 대한 그들의 생각은 프로그램이나 기계가 인간의 [69]사고방식과 비슷한 것을 어떻게 볼 수 있는지에 대한 것입니다.그들은 인간의 마음이 할 수 있는 것처럼 어떤 기계가 불완전한 정보를 가지고 그것을 통해 부족한 세부사항들을 채울 수 있는지를 보고 싶었습니다.만약 이 기계가 이것을 할 수 있다면, 그들은 기계가 어떻게 결과를 결정했는지 생각할 필요가 있었습니다.

참고 항목

참고문헌

  1. ^ Tedre, Matti (2014). The Science of Computing: Shaping a Discipline. Chapman Hall.
  2. ^ "History of Computer Science". uwaterloo.ca.
  3. ^ Boyer, Carl B.; Merzbach, Uta C. (1991). A History of Mathematics (2nd ed.). John Wiley & Sons, Inc. pp. 252–253. ISBN 978-0-471-54397-8.
  4. ^ Ifrah, Georges (2001). The Universal History of Computing: From the Abacus to the Quantum Computer. John Wiley & Sons. ISBN 978-0-471-39671-0.
  5. ^ Bellos, Alex (2012-10-25). "Abacus adds up to number joy in Japan". The Guardian. London. Retrieved 2013-06-25.
  6. ^ Sinha, A. C. (1978). "On the status of recursive rules in transformational grammar". Lingua. 44 (2–3): 169–218. doi:10.1016/0024-3841(78)90076-1.
  7. ^ a b "Project Overview". The Antikythera Mechanism Research Project. Retrieved 2023-07-06.
  8. ^ "Islam, Knowledge, and Science". Islamic Web. Retrieved 2017-11-05.
  9. ^ Lorch, R. P. (1976), "The Astronomical Instruments of Jabir ibn Aflah and the Torquetum", Centaurus, 20 (1): 11–34, Bibcode:1976Cent...20...11L, doi:10.1111/j.1600-0498.1976.tb00214.x
  10. ^ Simon Singh, The Code Book, pp. 14–20
  11. ^ "Al-Kindi, Cryptography, Codebreaking and Ciphers". 9 June 2003. Retrieved 2023-08-25.
  12. ^ Koetsier, Teun (2001), "On the prehistory of programmable machines: musical automata, looms, calculators", Mechanism and Machine Theory, 36 (5): 589–603, doi:10.1016/S0094-114X(01)00005-2..
  13. ^ Marchant, Jo (November 2006). "In search of lost time". Nature. 444 (7119): 534–538. Bibcode:2006Natur.444..534M. doi:10.1038/444534a. PMID 17136067.
  14. ^ "John Napier and the Invention of Logarithms, 1614. E. W. Hobson". Isis. 3 (2): 285–286. 1920-10-01. doi:10.1086/357925. ISSN 0021-1753.
  15. ^ "1.6 Shickard's Calculating Clock Bit by Bit". Retrieved 2021-03-17.
  16. ^ "History of Computing Science: The First Mechanical Calculator". eingang.org.
  17. ^ Kidwell, Peggy Aldritch; Williams, Michael R. (1992). The Calculating Machines: Their history and development. MIT Press.Kidwell, Peggy Aldritch; Williams, Michael R. (1992). The Calculating Machines: Their history and development. MIT Press.p.38-42, 번역 및 편집
  18. ^ "CS History". everythingcomputerscience.com. Retrieved 2020-05-01.
  19. ^ "2021: 375th birthday of Leibniz, father of computer science". people.idsia.ch.
  20. ^ Lande, Daniel. "Development of the Binary Number System and the Foundations of Computer Science". The Mathematics Enthusiast: 513–540.
  21. ^ 위너, N., 사이버네틱스 (수정본이 있는 제2판과 2개의 장이 추가됨), MIT 프레스와 와일리, 뉴욕, 1961, p. 12.
  22. ^ Wiener, Norbert (1948). "Time, Communication, and the Nervous System". Annals of the New York Academy of Sciences. 50 (4 Teleological): 197–220. Bibcode:1948NYASA..50..197W. doi:10.1111/j.1749-6632.1948.tb39853.x. PMID 18886381. S2CID 28452205. Archived from the original on 23 July 2021. Retrieved 23 July 2021.
  23. ^ a b Tedre, Matti (2014). The Science of Computing: Shaping a Discipline. CRC Press.
  24. ^ "Charles Babbage". Encyclopædia Britannica Online Academic Edition. Encyclopædia Britannica In. 3 July 2023. Retrieved 2023-07-06.
  25. ^ 에반스 2018, 16쪽.
  26. ^ 에반스 2018, 21쪽.
  27. ^ 에반스 2018, 페이지 20.
  28. ^ Isaacson, Betsy (2012-12-10). "Ada Lovelace, World's First Computer Programmer, Celebrated With Google Doodle". The Huffington Post. Retrieved 2013-02-20.
  29. ^ "The John Gabriel Byrne Computer Science Collection" (PDF). Archived from the original on 2019-04-16. Retrieved 2019-08-08.
  30. ^ "1907: was the first portable computer design Irish?". Ingenious Ireland. 17 October 2012.
  31. ^ L. Torres Quevedo (1914). "Ensayos sobre Automática – Su definicion. Extension teórica de sus aplicaciones". Revista de la Academia de Ciencias Exacta, Revista 12: 391–418.
  32. ^ Torres Quevedo, Leonardo (19 November 1914). "Automática: Complemento de la Teoría de las Máquinas" (PDF). Revista de Obras Públicas. LXII (2043): 575–583.
  33. ^ Kneusel, Ronald T. (2017). Numbers and Computers. Springer. pp. 84–85. ISBN 978-3319505084.
  34. ^ Randell, B. (1982). "Electromechanical Calculating Machine". The Origins of Digital Computers. Springer. pp. 109–120. ISBN 9783540113195.
  35. ^ Randell, Brian. "From Analytical Engine to Electronic Digital Computer: The Contributions of Ludgate, Torres, and Bush" (PDF). Archived from the original (PDF) on 21 September 2013. Retrieved 9 September 2013.
  36. ^ 피어스, CS, "A에게 보내는 편지, 피어스. 마르콴드", 1886년 날짜, 찰스 S. Peirce, v. 5, 1993, pp. 421-23버크스, 아서 W., "리뷰:찰스 S.피어스, 수학의 새로운 요소들", 미국 수학 학회 회보 v. 84, n. 5(1978), pp. 913-18, 917 참조.PDF 이프린트.
  37. ^ Peirce, C. S. (1880-81년 겨울의 원고), "상수가 하나인 불리언 대수", 1933년 Collected Papers v. 4, 문단 12-20에 발표.1989년 찰스 S의 글로 재인쇄됨. Peirce v. 4, 페이지 218-21, Google [1]로버츠 참조, 돈 D. (2009),찰스 S의 실존적 그래프. 피어스, 131쪽.
  38. ^ Hans Kleine Büning; Theodor Lettmann (1999). Propositional logic: deduction and algorithms. Cambridge University Press. p. 2. ISBN 978-0-521-63017-7.
  39. ^ John Bird (2007). Engineering mathematics. Newnes. p. 532. ISBN 978-0-7506-8555-9.
  40. ^ Yamada, Akihiko (2004). "History of Research on Switching Theory in Japan". IEEJ Transactions on Fundamentals and Materials. Institute of Electrical Engineers of Japan. 124 (8): 720–726. Bibcode:2004IJTFM.124..720Y. doi:10.1541/ieejfms.124.720.
  41. ^ "Switching Theory/Relay Circuit Network Theory/Theory of Logical Mathematics". IPSJ Computer Museum. Information Processing Society of Japan.
  42. ^ 라도미르 스탄코비치(니슈 대학교), 야코 T.Astola (Tampere University of Technology), Mark G. Karpovsky (보스턴 대학교), 전환이론에 관한 몇 가지 역사적 발언, 2007, DOI 10.1.1.66.1248
  43. ^ a b Stanković, Radomir S. [in German]; Astola, Jaakko Tapio [in Finnish], eds. (2008). Reprints from the Early Days of Information Sciences: TICSP Series On the Contributions of Akira Nakashima to Switching Theory (PDF). Tampere International Center for Signal Processing (TICSP) Series. Vol. 40. Tampere University of Technology, Tampere, Finland. ISBN 978-952-15-1980-2. ISSN 1456-2774. Archived from the original (PDF) on 2021-03-08.Stanković, Radomir S. [in German]; Astola, Jaakko Tapio [in Finnish], eds. (2008). Reprints from the Early Days of Information Sciences: TICSP Series On the Contributions of Akira Nakashima to Switching Theory (PDF). Tampere International Center for Signal Processing (TICSP) Series. Vol. 40. Tampere University of Technology, Tampere, Finland. ISBN 978-952-15-1980-2. ISSN 1456-2774. Archived from the original (PDF) on 2021-03-08.{{cite book}}CS1 메인 : 위치 누락 게시자 (링크) (3+207+1페이지) 10:00 min
  44. ^ Shannon, Claude (2021-02-02), "A Symbolic Analysis of Relay and Switching Circuits (1938)", Ideas That Created the Future, The MIT Press, pp. 71–78, doi:10.7551/mitpress/12274.003.0010, hdl:1721.1/11173, ISBN 978-0-262-36317-4, S2CID 242857376, retrieved 2021-03-17
  45. ^ Light, Jennifer S. (1999-07-01). "When Computers Were Women". Technology and Culture. 40 (3): 455–483. doi:10.1353/tech.1999.0128. ISSN 1097-3729. S2CID 108407884.
  46. ^ Kiesler, Sara; Sproull, Lee; Eccles, Jacquelynne S. (1985-12-01). "Pool Halls, Chips, and War Games: Women in the Culture of Computing". Psychology of Women Quarterly. 9 (4): 451–462. doi:10.1111/j.1471-6402.1985.tb00895.x. ISSN 1471-6402. S2CID 143445730.
  47. ^ Fritz, W. B. (1996). "The women of ENIAC". IEEE Annals of the History of Computing. 18 (3): 13–28. doi:10.1109/85.511940.
  48. ^ Gürer, Denise (2002-06-01). "Pioneering Women in Computer Science". SIGCSE Bull. 34 (2): 175–180. doi:10.1145/543812.543853. ISSN 0097-8418. S2CID 2577644.
  49. ^ 그리어 2013, 페이지 138.
  50. ^ "Gödel and the limits of logic". plus.maths.org. 2006-06-01. Retrieved 2020-05-01.
  51. ^ a b Copeland, B. Jack (2019). "The Church-Turing Thesis". In Zalta, Edward N. (ed.). Stanford Encyclopedia of Philosophy (Spring 2019 ed.). Metaphysics Research Lab, Stanford University. Retrieved 2020-05-01.
  52. ^ a b c d e f g "Turing's Automatic Computing Engine". The Modern History of Computing. Stanford Encyclopedia of Philosophy. Metaphysics Research Lab, Stanford University. 2017.
  53. ^ Barker-Plummer, David (1995-09-14). "Turing Machines". Stanford Encyclopedia of Philosophy. Retrieved 2013-02-20.
  54. ^ Rojas, R. (1998). "How to make Zuse's Z3 a universal computer". IEEE Annals of the History of Computing. 20 (3): 51–54. doi:10.1109/85.707574. S2CID 14606587.
  55. ^ Rojas, Raúl. "How to Make Zuse's Z3 a Universal Computer". Archived from the original on 2014-07-14.
  56. ^ 2010년 11월 18일 호르스트 주제가 과학박물관(런던)에서 컴퓨터 보존학회에 행한 강연
  57. ^ "BBC News – How Alan Turing's Pilot ACE changed computing". BBC News. May 15, 2010.
  58. ^ a b "The First "Computer Bug"" (PDF). CHIPS. United States Navy. 30 (1): 18. January–March 2012.
  59. ^ Shannon, Claude Elwood (1964). The mathematical theory of communication. Warren Weaver. Urbana: University of Illinois Press. ISBN 0-252-72548-4. OCLC 2654027.
  60. ^ Xiong, Aiping; Proctor, Robert W. (2018). "Information Processing: The Language and Analytical Tools for Cognitive Psychology in the Information Age". Frontiers in Psychology. 9: 1270. doi:10.3389/fpsyg.2018.01270. ISSN 1664-1078. PMC 6092626. PMID 30135664.
  61. ^ "Von Neumann Architecture - an overview ScienceDirect Topics". www.sciencedirect.com. Retrieved 2021-03-17.
  62. ^ a b c Cragon, Harvey G. (2000). Computer Architecture and Implementation. Cambridge: Cambridge University Press. pp. 1–13. ISBN 978-0-521-65168-4.
  63. ^ "Accumlator" Def. 3. Oxford Dictionaries. Archived from the original on May 18, 2013.
  64. ^ Moor, James (2006-12-15). "The Dartmouth College Artificial Intelligence Conference: The Next Fifty Years". AI Magazine. 27 (4): 87. doi:10.1609/aimag.v27i4.1911. ISSN 2371-9621.
  65. ^ Prudhomme, Gerard (December 2018). Introduction to Assembly Language Programming. Arcler Education Incorporated. ISBN 978-1-77361-470-0. OCLC 1089398724.
  66. ^ McCarthy, John; Lifschitz, Vladimir (1991). Artificial intelligence and mathematical theory of computation : papers in honor of John McCarthy. Academic Press. ISBN 0-12-450010-2. OCLC 911282256.
  67. ^ Haenlein, Michael; Kaplan, Andreas (2019). "A Brief History of Artificial Intelligence: On the Past, Present, and Future of Artificial Intelligence". California Management Review. 61 (4): 5–14. doi:10.1177/0008125619864925. ISSN 0008-1256. S2CID 199866730.
  68. ^ Baeten, Jos C. M.; Ball, Tom; de Boer, Frank S., eds. (2012). Theoretical Computer Science: 7th IFIP TC 1/WG 2.2 International Conference, TCS 2012, Amsterdam, the Netherlands, September 26-28, 2012. Proceedings. Lecture Notes in Computer Science. Vol. 7604. Berlin, Heidelberg: Springer Berlin Heidelberg. doi:10.1007/978-3-642-33475-7. ISBN 978-3-642-33474-0. S2CID 36796448.
  69. ^ "The Creativity Post What is Computational Creativity?". The Creativity Post. Retrieved 2021-03-04.

원천

추가열람

외부 링크