0과 1로 이해하는 컴퓨터 동작
1. ON/OFF
- 전구에 전기가 흐르면 전구가 켜지고(ON), 전기가 흐르지 않으면 전구가 꺼진다(OFF).
- 이렇게 컴퓨터는 ON 을 1로, OFF를 0으로 표현하는 이진법(Binary) 을 사용한다.
1.1. Bit 와 Byte
- 0과 1로 값을 표현하는 최소 단위를 ‘bit’라고 한다. (0 또는 1)
- 8bit는 1byte를 구성하며, 1byte는 문자를 표현하는 기본 단위로 사용된다.
1.2. Char
- 8bit, 즉 1byte로 영문(ASCII) 문자(char)를 표현한다.
- 코드를 표현할 때 "00010001"과 같은 2진수는 길고 읽기 어렵기 때문에, 8bit(1byte)를 두 자리로 나타낼 수 있는 16진수("0x11") 표기를 사용한다.
[출처] Computer Architecture - The ASCII character representations
1.3. Code
- 문자를 2진 코드로 정의하듯, 실행 코드도 동일한 방식으로 2진 형태로 정의된다.
- CPU는 이러한 기계어(Assembly)를 기반으로 동작하며, CPU를 설계할 때 정의되는 동작 코드(Instruction Code)는 x86, x64, ARM 등 CPU 아키텍처마다 서로 다르게 구성된다.
- Instruction Code는 피아노 연주를 위해 사용되는 음표들의 모음과 같다고 할 수 있다.
[출처] Stack Overflow - Intel x86(8086/8088) 16bit Opcode Instruction
1.4. Process
- CPU에는 Instruction Code를 처리하기 위한 레지스터(Register)라는 초고속 저장 공간이 있으며, 기계어 코드들은 일련의 과정을 거쳐 레지스터로 전달되어 명령을 실행하게 된다.