[ComputerScience] 컴퓨터 구조
컴퓨터 구조
컴퓨터 구조는 CPU, 메모리, 저장장치, 버스, 캐시 등 하드웨어의 동작 원리에 대한 지식으로 구성됩니다.
효율적인 프로그램과 성능 최적화를 위해 필수적으로 알고있어야하는 지식입니다.
컴퓨터가 이해하는 정보
컴퓨터는 사람이 작성한 소스 코드를 직접 이해하지 못합니다.
소스 코드는 컴파일러나 인터프리터를 거쳐, 컴퓨터가 이해할 수 있는 형태인 기계어(Machine Code) 또는 중간 언어로 변환됩니다.
이 과정에서 컴퓨터가 실제로 다루는 정보는 크게 데이터와 명령어로 나뉩니다.
데이터
데이터는 컴퓨터가 처리하거나 저장하는 정적인 정보를 의미합니다.
다음과 같은 것이 데이터입니다.
- 숫자, 문자
- 이미지, 동영상, 사운드
- 메모리에 저장된 값
- 외부 장치와 주고받는 정보
즉, 컴퓨터 내부와 외부에서 주고받거나 보관되는 모든 정보를 통칭해 데이터라고 합니다.
데이터 자체는 아무 동작도 하지 않으며, 명령어에 의해 사용되는 재료의 역할을 합니다.
명령어
명령어는 컴퓨터늘 실제로 동작시키는 정보입니다.
CPU는 데이터를 직접 이해하거나 처리하지 않고, 명령어를 해석하고 실행함으로써 데이터를 다룹니다.
컴퓨터가 최종적으로 이해하는 모든 프로그램들은 0과 1로 이루어진 명령어(Instruction)들의 집합으로 표현됩니다.
명령어는 일반적으로 두 요소로 구성됩니다.
- 수행할 동작(Operation Code, Opcode)
- 데이터를 활용하는 정보로, 수행할 연산의 종류를 나타냅니다.
- CPU가 명령어를 이해하고 실행하는 주체
- 명령어 사이클이 존재하며, CPU가 명령어를 처리하는 순서를 의미
- 수행할 대상(Operands)
- 연산에 사용할 데이터나 메모리 주소, 레지스터 등(예: 숫자, 문자, 이미지, 동영상과 같은 정보)
댓글남기기