펌웨어 : 하드웨어와 소프트웨어의 중간단계. 주로 assembly언어 사용, 디바이스 드라이버에서 주로 사용

하드웨어 : CPU, 메모리, 입출력장치, 레지스터(플립플롭)

-레지스터의 예시

프로그램 카운터(PC) : 다음에 실행할 명령어의 주소를 저장하는 레지스터

명령어 레지스터(IR) : 메모리로부터 읽어온 명령어를 수행하기 위해 일시적으로 저장하는 레지스터

컴퓨터 언어는 기계어(2진수), 어셉블리언어, 고급언어(C같은거)로 이루어져있다.

컴파일러 : 고급언어를 기계어로 바꿔준다

기계어의 형식

image.png

연산코드 : 무슨 연산을 수행할지

오퍼랜드 : 데이터가 있는 주소 혹은 데이터비트

*word : 한번에 오가는 data의 bit수

instruction cycle은 흔히 fetch cycle과 execution cycle로 이루어져있다.

더 세분화하면 1.명령어 인출 2.명령어해독 3.명령어실행 4.프로그램 카운터 증가