프로그램이 바꾸는 쓰임
사진의 밝기를 조절하는 일과 표의 합계를 구하는 일은 겉보기에는 다르다. 컴퓨터에서는 둘 다 저장된 데이터를 읽고 정해진 연산을 적용하는 과정으로 처리된다. 무엇을 어떻게 처리할지는 프로그램이 정한다.
범용 컴퓨터는 프로그램을 바꾸어 여러 작업에 사용할 수 있다. 반면 특정 기기 내부의 제어용 컴퓨터는 정해진 목적에 맞춰 구성되기도 한다. 스마트폰과 자동차의 제어 장치 역시 컴퓨팅 장치를 포함한다.
장치 사이의 역할 분담
처리 장치는 명령을 실행하고, 기억 장치는 명령과 데이터를 보관한다. 입력 장치는 바깥의 정보를 받아들이고 출력 장치는 처리 결과를 전달한다. 키보드와 화면만이 입출력 수단은 아니다. 카메라, 센서, 네트워크 장치도 정보를 주고받는다.
이 역할들은 하나의 칩에 통합될 수도 있고 여러 부품으로 나뉠 수도 있다. 컴퓨터를 이해할 때는 부품의 외형보다 데이터가 어디에 저장되고 어떤 경로로 이동하는지를 보는 편이 유용하다.
숫자로 다루는 글과 영상
디지털 컴퓨터는 글자, 소리, 사진을 각각 정해진 규칙에 따른 숫자 데이터로 나타낸다. 글자는 문자 인코딩, 사진은 화소 값, 소리는 시간에 따라 채집한 신호 값으로 표현할 수 있다. 같은 비트열이라도 어떤 형식으로 해석하는지에 따라 의미가 달라진다.
성능을 결정하는 조건
컴퓨터의 속도는 CPU의 동작 주파수 하나로 정해지지 않는다. 메모리 용량과 대역폭, 저장 장치의 지연, 프로그램의 구조, 여러 작업을 나누는 방식이 함께 영향을 준다. 영상 처리처럼 특정 연산을 많이 하는 작업에는 GPU 등 별도 처리 장치가 큰 역할을 할 수 있다.