CS

명령어

rhdaud2 2025. 3. 25. 17:47

 


명령어 : 수행할 동작과 수행할 대상으로 구성
-> 수행할 대상 : 수핼할 동작에 사용될 데이터 자체 or 동작에 사용될 데이터가 저장된 위치

* 1개의 명령어는 '연산 코드(opcode)' 와 0개 이상의 '오퍼랜드(operand)' 로 구성
- 연산 코드 : 명령어가 수행할 동작
- 오퍼랜드 : 동작에 사용될 데이터 혹은 그것이 저장된 위치

 

 

 

 

--
기계어 (marchine code) 
- CPU가 이해할 수 있게 0,1로 표현된 정보를 있는 그대로 표현한 언어
- ex) 실행 파일(exe)

어셈블리어 (assembly language)  
- 기계어(0,1)를 읽기 편한 형태로 단순 번역한 언어
- ex) push rbp(0101 0101), pop rbp(0101 1101), ret (1100 0011)

 

 

* CPU에 따라 기계어와 어셈블리어도 달라질 수 있다

 

 

 

 


 

CPU가 명령어를 처리하는 양상 - 명령어 사이클
- 명령어 처리 과정에서 각각 명령어는 일정한 주기를 반복하며 실행(인출, 실행)
  - 인출 사이클(fetch cycle) : 메모리 속 명령어를 'CPU로 가져오는 단계'
  - 실행 사이클(execution cycle) : 인출한 명령어 실행 단계 

*특정 명령어는 추가적인 처리 필요
  - 간접 사이클(indirect cycle) : 명령어 실행을 위해 한번 더 메모리에 접근
  - 인터럽트 사이클 (interrupt cycle) : 인터럽트를 처리하는 단계
   (interrupt - cpu 레지스터에 대한 이해 선행 필요)

 

 

 

 

'CS' 카테고리의 다른 글

CPU-인터럽트  (0) 2025.04.02
CPU - 레지스터  (0) 2025.03.25
데이터  (0) 2025.03.24
cs 학습의 필요 이유(당연한 이야기)  (0) 2025.03.24
웹 브라우저 작동 방식(기록용)  (0) 2025.03.22