컴퓨터는 0과 1로 표현된 정보만을 이해한다. 그리고 이렇게 0과 1로 표현되는 정보에는 데이터
와 명령어
가 있다.
데이터
는 컴퓨터가 이해하는 숫자, 문자, 이미지, 동영상과 같은 정적인 정보를 가리킬 때 사용된다.
명령어
는 데이터를 움직이고 컴퓨터를 작동시키는 정보를 의미한다.
데이터와 명령어 중에서 컴퓨터를 실질적으로 작동시키는 더 중요한 정보는 명령어이다.
컴퓨터를 이루고 있는 네 가지 핵심 부품은 중앙처리장치
, 주기억장치
, 보조기억장치
, 입출력장치
이다.
위와 같은 그림은 네 가지 핵심 부품의 큰 그림을 그린 것이다. 가장 큰 사각형이 메인보드, 그 안에는 CPU
와 메모리
, 보조기억장치
, 입출력장치
가 있는데 이 모두는 시스템 버스
와 연결이 되어 있다. CPU 안에는 ALU
, 제어장치
, 여러 레지스터
가 포함되어 있다.
이에 대해서 구체적으로 살펴보도록 하자.
메모리는 현재 실행되는 프로그램의 명령어
와 데이터
를 저장하는 부품이다. 즉, 프로그램이 실행되려면 반드시 메모리에 저장되어 있어야 한다. 이때 컴퓨터가 빠르게 작동하기 위해서는 메모리 속 명령어와 데이터가 중구난방으로 저장되어 있으면 안되기 때문에 주소
라는 개념을 사용하여 메모리 내 원하는 위치에 접근할 수 있다.
CPU는 컴퓨터의 두뇌이다. CPU는 메모리에 저장된 명령어를 읽어 들이고, 읽어 들인 명령어를 해석하고, 실행하는 부품이다.
구체적으로 CPU 안에 있는 부품 중에서 ALU
는 계산만을 위해 존재하는 부품이다. 컴퓨터 내부에서 수행되는 대부분의 계산은 ALU
가 맡는다.
레지스터
는 CPU 내부의 작은 임시 저장 장치이다. 프로그램을 실행하는 데 필요한 값들을 임시로 저장한다.
제어장치
는 전기 신호를 내보내고 명령어를 해석하는 장치이다. 제어 신호란 컴퓨터 부품들을 관리하고 작동시키기 위한 일종의 전기 신호이다. 쉽게 말하면 CPU가 메모리에 저장된 값을 읽고 싶을 땐 메모리를 향해 메모리 읽기
라는 제어 신호를 보내고 어떤 값을 저장하고 싶을 땐 메모리를 향해 메모리 쓰기
라는 제어신호를 보낸다.
메모리에는 실행되는 프로그램의 명령어와 데이터를 저장하지만, 이 메모리는 가격이 비싸 저장 용량이 적고 전원이 꺼지면 저장된 내용을 모두 잃는다. 따라서 메모리보다 크기가 크고 전원이 꺼져도 저장된 내용을 잃지 않는 메모리를 보조하는 장치가 보조기억장치
이다.
입출력 장치
는 마이크, 스피커, 프린터, 마우스와 같이 컴퓨터 외부에 연결되어 컴퓨터 내부와 정보를 교환하는 장치를 의미한다.
앞에서 설명한 컴퓨터의 핵심 부품들은 모두 메인보드
라는 판에 연결된다. 메인보드에 연결된 부품들은 서로 정보를 주고받을 수 있는데, 이는 메인보드 내부에 버스
라는 통로가 있기 때문이다. 컴퓨터 내부에는 다양한 종류의 통로가 존재하는데 컴퓨터의 네 가지 핵심 부품을 연결하는 가장 중요한 버스를 시스템 버스
라고 한다.