컴퓨터의 구조를 설명해줄게!
● 컴퓨터의 구성
이번 시간에는 컴퓨터의 구성에 대해서 이야기하는 시간을 가지도록 하겠습니다. 컴퓨터를 보면 참 이상한 회로가 많고 무척이나 어려워 보입니다. 하지만 그 기본적인 구성을 다이어그램(그림)의 형태로 쉽게 이해하고자 한다면 그다지 어렵지 않을 수 있습니다. 컴퓨터 시스템은 기본적으로 하드웨어(Hardware)와 소프트웨어(Software)로 구성됩니다. 하드웨어는 컴퓨터를 구성하는 기계적 장치이고, 소프트웨어는 하드웨어의 동작을 지시하고 제어하는 명령어의 집합입니다. 컴퓨터 구조란 하드웨어를 구성하는 각 장치의 특성과 동작 원리를 다루는 학문입니다. 여기서는 하드웨어의 각 장치에 해당하는 중앙처리장치(CPU), 기억장치, 입출력장치에 대해 하나씩 살펴보도록 하겠습니다.
먼저 하드웨어의 구성에 대해서 이야기하는 시간을 가지도록 하겠습니다. 하드웨어는 중앙처리장치, 기억장치, 입출력장치로 구성되며 각 장치는 시스템 버스로 연결되어 있습니다. 시스템 버스는 데이터와 명령 제어 신호를 각 장치로 실어 나르는 역할을 합니다. 다음 그림은 각 장치 사이의 데이터 흐름을 나타낸 것입니다.
위 사진에서 각 화살표들을 바로 '시스템 버스'라고 부르는 것입니다. 이 시스템 버스에 관해서도 나중에 자세하게 다루도록 하겠습니다. 또한 위의 주기억장치와 보조기억장치를 합쳐서 총 '기억장치'라고 부르며 프로그램을 올려놓는 기억 공간이라고 생각하시면 정말 간단합니다. 실제로 컴퓨터에서 하는 모든 처리는 중앙처리장치에서 하는 것이죠. 결과적으로 중앙처리장치가 바로 컴퓨터의 두뇌같은 것이라고 보시면 됩니다.
중앙처리장치는 인간으로 따지면 두뇌에 해당하는 것으로 CPU라고 부릅니다. 주기억장치에서 프로그램 명령어와 데이터를 읽어와 처리하고 명령어의 수행 순서를 제어합니다. 중앙처리장치는 비교와 연산을 담당하는 산술논리연산장치(ALU)와 명령어의 해석과 실행을 담당하는 제어장치, 그리고 속도가 빠른 데이터 기억장소인 레지스터로 구성됩니다. 개인용 컴퓨터와 같은 소형 컴퓨터에서는 중앙처리장치를 마이크로프로세서라고도 합니다.
기억장치는 프로그램, 데이터, 연산의 중간 결과 등을 저장하는 장치입니다. 주기억장치와 보조기억장치로 나누어지며 흔히 RAM과 ROM도 여기서 나옵니다. 실행중인 프로그램과 같은 프로그램에 필요한 데이터를 일시적으로 저장합니다. 보조기억장치는 흔히 하드디스크 등을 말하며 주기억장치에 비해 속도는 느리지만 많은 자료를 영구적으로 보관할 수 있다는 장점이 있습니다.
입출력장치는 입력장치와 출력장치로 나누어지는데 입력장치는 컴퓨터 내부로 자료를 입력하는 장치로서 키보드, 마우스, 조이스틱 등이 있고 출력장치는 프린터, 모니터, 스피커 등의 인간이 인지할 수 있는 여러 가지 형태로 변환하여 컴퓨터에서 외부로 표현하는 장치입니다.
시스템 버스란 '하드웨어 구성 요소를 물리적으로 연결하는 선'을 의미합니다. 각 구성 요소가 다른 구성 요소로 데이터를 보낼 수 있도록 통로가 되어줍니다. 용도에 따라 데이터 버스, 주소 버스, 제어 버스로 나누어집니다.
- 데이터 버스 : 중앙처리장치와 기타 장치 사이에서 데이터를 전달하는 통로입니다. 기억장치와 입출력장치의 명령어와 데이터를 중앙처리장치로 보내거나, 중앙처리장치의 연산 결과를 기억장치와 입출력장치로 보내므로 양방향 버스입니다.
- 주소 버스 : 데이터를 정확히 실어 나르기 위해서는 기억장치 '주소'를 정해주어야 합니다. 주소 버스는 중앙처리장치가 주기억장치나 입출력장치로 기억장치 주소를 전달하는 통로이기 때문에 단방향 버스입니다. 주소 선의 수는 시스템의 기억장치 용량을 결정합니다. 수가 많을수록 당연히 접근할 수 있는 기억 용량이 커집니다. 예를 들어 주소 선의 수가 8비트이면 주소를 256개 지정할 수 있으며 16비트이면 65,536개를 지정할 수 있습니다.
- 제어 버스 : 주서 버스와 데이터 버스는 모든 장치에 공유되기 때문에 이를 제어할 수단이 필요합니다. 제어 버스는 중앙처리장치가 기억장치나 입출력장치에 제어 신호를 전달하는 통로입니다. 제어 신호에는 기억장치 읽기 및 쓰기, 버스 요청 및 승인, 인터럽트 요청 및 승인, 클락, 리셋 등이 있습니다. 제어 버스는 읽기 동작과 쓰기 동작을 모두 수행하기 때문에 양방향 버스입니다.
위 사진은 램을 도식화한 것입니다. 컴퓨터는 기본적으로 읽고(READ), 처리(PROCESS)한 뒤에 저장(Write)합니다. 이러한 과정에서 주기억장치(RAM)과 끊임없이 소통하는 것입니다. 이 때 데이터를 읽어오는 양을 상정할 수 있습니다. 흔히 운영체제는 32-bit 혹은 64-bit를 사용하게 되는데 64-bit인 경우 중앙처리장치(CPU)는 RAM으로부터 데이터를 한 번에 64비트씩 읽어올 수 있게 되는 것입니다. 64비트면 기본적으로 연결하는 선이 64개는 있어야 하며 다른 말로 해서 워드(Word)가 64비트라고 이야기할 수 있습니다.
'컴퓨터 기초' 카테고리의 다른 글
컴퓨터의 기억장치란? (1) | 2016.06.12 |
---|---|
중앙처리장치(CPU)의 작동 원리를 알아보자! (0) | 2016.06.11 |
부동 소수점 방식이란? (2) | 2016.06.06 |
1의 보수와 2의 보수를 이해하자! (11) | 2016.06.06 |
아스키코드와 유니코드에 대해서 알아보자! (0) | 2016.06.05 |