인텔 8080
최근 수정 시각:
아키텍처 분류 | 제품 | |||||||||||
x86 이전 (4비트) | 4004 (1971) | 4040 (1974) | ||||||||||
x86 이전 (8비트) | 8008 (1972) | 8080 (1974) | 8085 (1977) | |||||||||
x86 (16비트) | 8086/8088 (1978/1979) | 80186/80188 (1982) | 80286 (1982) | |||||||||
x86(IA32) (32비트) | 80386 (1985) | 80486 (1989) | ||||||||||
기타 | iAPX432(8800) | i860 | i960 | |||||||||
관련 문서 |
1974년 4월 인텔에서 출시한 8비트 마이크로프로세서다. 1969년부터 인텔 4004 설계를 도운 시마 마사토시(嶋正利)는 다니던 비지콤을 그만두고 1972년 인텔로 이직하면서 그가 인텔 8080 설계를 주도했다. 페데리코 파진(Federico Faggin)은 그를 지도하면서 설계를 도왔다.#
2년전 출시된 8008의 개선판이며 바이너리 호환성은 없지만 어셈블리어 수준에서 호환되므로 다시 어셈블하면 정상적으로 작동했다.
8008을 기반으로 하고 있지만 내부 구조에서 개선이 이루어졌다. 가장 큰 변화는 함수 호출시 복귀 주소를 스택 포인터를 이용해서 메모리에 저장한다. 이로 인해 8레벨 이상의 함수 호출이 가능해졌다. 이외에도 여러가지 명령어와 레지스터의 용도를 확장했다.
인텔 8008보다 개선된 6μm NMOS 공정으로 생산되었으며, 4500개의 트랜지스터로 구성되어 있다.
인텔 8080은 컴퓨터 역사에서 가장 중요한 마이크로프로세서중의 하나이다. Z80만 하더라도 인텔 8080을 기반으로 하고 있으며[1] 당시 가장 널리 사용했던 8비트 운영 체제, CP/M도 원래는 인텔 8080 프로세서를 위한 것이었다.
2년전 출시된 8008의 개선판이며 바이너리 호환성은 없지만 어셈블리어 수준에서 호환되므로 다시 어셈블하면 정상적으로 작동했다.
8008을 기반으로 하고 있지만 내부 구조에서 개선이 이루어졌다. 가장 큰 변화는 함수 호출시 복귀 주소를 스택 포인터를 이용해서 메모리에 저장한다. 이로 인해 8레벨 이상의 함수 호출이 가능해졌다. 이외에도 여러가지 명령어와 레지스터의 용도를 확장했다.
인텔 8008보다 개선된 6μm NMOS 공정으로 생산되었으며, 4500개의 트랜지스터로 구성되어 있다.
인텔 8080은 컴퓨터 역사에서 가장 중요한 마이크로프로세서중의 하나이다. Z80만 하더라도 인텔 8080을 기반으로 하고 있으며[1] 당시 가장 널리 사용했던 8비트 운영 체제, CP/M도 원래는 인텔 8080 프로세서를 위한 것이었다.
클럭 | 2~3.125MHz |
데이터 폭 | 8비트 |
어드레스 폭 | 16비트 |
지원 명령어 | 72개 |
트랜지스터 | 4,500개 |
공정 | 6μm |
- 8비트 레지스터: B, C, D, E, H, L, F, A
- 0(
000
): B - 1(
001
): C - 2(
010
): D - 3(
011
): E - 4(
100
): H - 5(
101
): L - 6(
110
): 메모리. 주소 지정에는 H 및 L 레지스터가 사용된다. - 7(
111
): A
- 16비트 레지스터[2]: BC, DE, HL, SP, PC
- 0(
00
): B-C - 1(
01
): D-E - 2(
10
): H-L - 3(
11
): SP - PC
8진수 코드 | Mnemonic | 설명 | ||||||||
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | |||
데이터 이동 명령어 | ||||||||||
1DS | MOV r1, r2 | 0 | 1 | D | D | D | S | S | S | |
1D6 | MOV r, M | 0 | 1 | D | D | D | 1 | 1 | 0 | |
16S | MOV M, r | 0 | 1 | 1 | 1 | 0 | S | S | S | |
0D6 --- | MVI r, data | 0 | 0 | D | D | D | 1 | 1 | 0 | |
data | ||||||||||
066 --- | MVI M, data | 0 | 0 | 1 | 1 | 0 | 1 | 1 | 0 | |
data | ||||||||||
0-1 --- --- | LXI rp, data16 | 0 | 0 | R | P | 0 | 0 | 0 | 1 | |
low-order data | ||||||||||
high-order data | ||||||||||
072 --- --- | LDA addr | 0 | 0 | 1 | 1 | 1 | 0 | 1 | 0 | |
low-order addr | ||||||||||
high-order addr | ||||||||||
062 --- --- | STA addr | 0 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | |
low-order addr | ||||||||||
high-order addr | ||||||||||
052 --- --- | LHLD addr | 0 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | |
low-order addr | ||||||||||
high-order addr | ||||||||||
042 --- --- | SHLD addr | 0 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | |
low-order addr | ||||||||||
high-order addr | ||||||||||
0-2 --- --- | LDAX addr | 0 | 0 | R | P | 1 | 0 | 1 | 0 | rp=B(00), rp=D(01) 만 지정 가능 |
low-order addr | ||||||||||
high-order addr | ||||||||||
0-2 --- --- | STAX addr | 0 | 0 | R | P | 0 | 0 | 1 | 0 | rp=B(00), rp=D(01) 만 지정 가능 |
low-order addr | ||||||||||
high-order addr | ||||||||||
사칙연산 명령어 | ||||||||||
논리연산 명령어 | ||||||||||
분기 명령어 | ||||||||||
스택, 입출력, 제어 명령어 |
8008 명령어 | 클럭 수 | 8080 명령어 | 클럭 수 | ||
Mnemonic | 바이트 수 | Mnemonic | 바이트 수 | ||
Lr1r2 | 1 | 10 | MOV r1, r2 | 1 | 5 |
LrM | 1 | 16 | MOV r, M | 1 | 7 |
LMr | 1 | 14 | MOV M, r | 1 | 7 |
LrI | 2 | 16 | MVI r, data | 2 | 7 |
LMI | 2 | 18 | MVI M, data | 2 | 10 |
INr/DCr | 1 | 10 | INR/DCR r | 1 | 5 |
(ALU)r | 1 | 10 | (ALU) r | 1 | 4 |
(ALU)M | 1 | 16 | (ALU) M | 1 | 7 |
(ALU)I | 2 | 16 | (ALU)I | 2 | 7 |
RLC/RRC/RAL/RAR | 1 | 10 | RLC/RRC/RAL/RAR | 1 | 4 |
JMP | 3 | 22 | JMP addr | 3 | 10 |
JFc/JTc | 3 | 18-22 | Jcc addr | 3 | 10 |
CAL | 3 | 22 | CALL addr | 3 | 17 |
CFc/CTc | 3 | 18-22 | Ccc addr | 3 | 11-17 |
RET | 1 | 10 | RET | 1 | 10 |
RFc/RTc | 1 | 6-10 | Rcc addr | 1 | 5-11 |
RES | 1 | 10 | RST n | 1 | 11 |
INP | 1 | 16 | IN port | 2 | 10 |
OUT | 1 | 12 | OUT port | 2 | 10 |
HLT | 1 | 8 | HLT | 1 | 7 |
- 인텔 8080의 후속작이 Z80이라고 하는 이야기도 있는데 틀린 말이다. 일단 Z80과 인텔 8080은 주요 개발자들이 같아 구조면에서 상당히 유사하지만 다른 회사에서 만들었을 뿐 아니라, Z80은 인텔 8080을 기반으로 하는 개선된 프로세서이고 레지스터나 명령어 세트에서 확장이 많이 되었기 때문에 인텔 8080의 프로그램을 Z80에서 돌릴수는 있지만 그 역으로는 어렵다.
- 유명한 알테어에 쓰였다.
- 시마 마사토시는 인텔 8080 회로 좌측 하단에 시마 가문 문양을 새겨놓았다.
- 게임보이의 CPU는 이 CPU를 기반으로 Z80의 명령을 추가한 커스텀 CPU이다.
이 저작물은 CC BY-NC-SA 2.0 KR에 따라 이용할 수 있습니다. (단, 라이선스가 명시된 일부 문서 및 삽화 제외)
기여하신 문서의 저작권은 각 기여자에게 있으며, 각 기여자는 기여하신 부분의 저작권을 갖습니다.
나무위키는 백과사전이 아니며 검증되지 않았거나, 편향적이거나, 잘못된 서술이 있을 수 있습니다.
나무위키는 위키위키입니다. 여러분이 직접 문서를 고칠 수 있으며, 다른 사람의 의견을 원할 경우 직접 토론을 발제할 수 있습니다.