컴퓨터과학이 여는 세계 6~9강 정리

sith-call.dev·2023년 6월 1일
0

지금까지 정리

컴퓨터의 원천 설계도는 튜링이 튜링 머신으로서 제시하였다.

그리고 튜링 머신 중에서도 입력된 튜링 머신을 따라할 수 있는 것을 유니버셜 튜링 머신이라고 하는데, 이 유니버셜 튜링 머신이 지금의 컴퓨터에 해당한다.

그러나 여기까지는 이론적으로 설계가 존재했을 뿐, 실물로서 이 설계를 구현할 기술은 다른 영역에서 비슷한 시기에 발전해왔다.

부울 논리는 부울이란 학자가 사람들의 사고방식이 세 가지 간단한 규칙의 조합이라 주장한 것이다.

그런데 이 부울 논리에서 제시한 AND, OR, NOT이란 사고방식의 규칙이 스위치 회로의 소자들과 대응된다는 것을 클로드 섀넌은 발견하게 된다. 그리고 이것이 발전하여 논리회로를 설계할 시에 부울 논리가 개입하게 된다.

즉,사람의 다양한 생각을 표현할 수 있는 힘이 있는 부울 논리를 사용하여 스위치 회로를 설계할 수 있게 된 것이다.

그리하여 유니버셜 튜링 머신의 개념과 논리 회로의 개념이 만나 실물로서 설계 가능한 컴퓨터의 설계도가 폰 노이만 구조로서 제시되었다. 이것은 AND, OR, NOT 게이트로 설계 가능한 컴퓨터이다.

이로서 하드웨어적인 컴퓨터의 구현은 완성된 것이다.

참고로 튜링 머신을 하드웨어로도 구현할 수 있다. 즉, 튜링 머신은 하드웨어, 소프트웨어로 모두 구현할 수 있다.

튜링 머신의 구성 요소 중에서, 상태 확인 및 쓰기 읽기 장치, 명령표는 CPU에 해당하고, 테이프는 메모리에 해당한다. 그래서 CPU + 메모리를 좁은 의미의 컴퓨터라고 한다. 이때 상태는 CPU의 레지스터(상태 레지스터)로도 구현되었다고 개인적으로 생각한다. 읽기 쓰기는 MAR, MBR로 구현되었다고 생각한다.

이제부터는 소프트웨어의 세계로 넘어가게 된다.

소프트웨어 세계의 주 무대는 메모리이다. 메모리 상에 수로서 표현 가능한 튜링 머신이 수로 변환되어 플립플롭이란 기계들 위에 저장이 된다. 그러면, 유니버셜 튜링 머신인 컴퓨터가 이를 읽고 그 튜링 머신을 따라하면서 문제를 해결해 나간다.

이때 소프트웨어를 구성하는 요소로 알고리즘이 나온다. 알고리즘의 주요 이슈는 비용이자 복잡도이다. 그런데 여기서 첨부하고 싶은 내용은 알고리즘은 데이터 구조와도 관련된 내용인 것이다.

profile
lim (time → ∞) Life(time) = LOVE

0개의 댓글

관련 채용 정보