Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- 위크셋
- nodemailer
- nestjs
- JSON.stringify
- 카카오로그인
- 중첩 구조 분해
- TypeScript
- Mongoose
- 참조에 의한 객체 복사
- 카카오 소셜로그인
- nextjs
- 이메일 전송
- 캐러셀
- 구조 분해 할당
- 화살표 함수
- nest
- Map
- 객체
- 위크맵
- DB
- 자바스크립트
- logstash
- javacript
- JSON.parse
- AGGREGATE
- 로그스태시
- context switch
- MongoDB
- react-slick
- JavaScript
Archives
- Today
- Total
뚜sh뚜sh
명령어 집합 구조, CISC와 RISC 본문
명령어 집합 (구조) - ISA
- ISA는 CPU의 언어이자 하드웨어가 소프트웨어를 어떻게 이해할지에 대한 약속임
- CPU가 이해할 수 있는 명령어들의 모임
- CPU의 언어인 셈
- 명령어가 달라지면 그에 대한 나비효과로 많은 것들이 달라짐
- ex) 명령어 해석 방식, 레지스터의 종류와 개수, 파이프라이닝의 용이성 등..
- 인텔의 CPU는 일반적으로 "X86 (X86-64)" 명령어 집합을, 애플의 CPU는 일반적으로 "ARM" 명령어 집합을 따름
- 인텔 CPU 컴퓨터에서 만든 실행 파일을 그대로 아이폰에 옮겨 특별한 설정없이 바로 실행하면 실행이 안됨
CISC(Complex Instruction Set Computer)
- 복잡한 명령어 집합을 활용하는 컴퓨터(CPU)
- x86, x86-64는 CISC 기반 명령어 집합 구조
- 명령어의 형태와 크기가 다양한 가변 길이 명령어를 활용
- 다양하고 강력한 명령어를 활용
- 상대적으로 적은 수의 명령어로도 프로그램을 실행할 수 있음
- 메모리를 최대한 아끼며 개발해야 했던 시절에는 인기가 높았으나 명령어 파이프라이닝이 불리하다는 치명적인 단점이 있음
- 명령어가 워낙 복잡하고 다양한 기능을 제공하는 탓에 명령어의 크기와 실행되기까지의 시간이 일정하지 않음
- 복잡한 명령어 때문에 명령어 하나를 실행하는 데에 여러 클럭 주기가 필요함
- 게다가, 대다수의 복잡한 명령어는 사용 빈도가 낮음
RISC(Reduced Instruction Set Computer)
- 명령어의 종류가 적고, 짧고 규격화된 명령어를 사용
- 단순하고 적은 수의 고정 길이 명령어 집합을 활용함
- 메모리 접근 최소화(load, store), 레지스터 십분 활용
- 다만 명령어 종류가 CISC보다 적기에 더 많은 명령어로 프로그램을 동작시킴
'컴퓨터 공학(컴퓨터 구조 + 운영체제)' 카테고리의 다른 글
메모리의 주소 공간 (0) | 2023.05.17 |
---|---|
RAM의 특징과 종류 (0) | 2023.05.17 |
명령어 병렬 처리 기법 (0) | 2023.04.28 |
빠른 CPU를 위한 설계 기법 (2) | 2023.04.28 |
명령어 사이클과 인터럽트 (0) | 2023.04.27 |
Comments