Download - ZILOG Z80 Formatos de instrucción
![Page 1: ZILOG Z80 Formatos de instrucción](https://reader036.vdocuments.co/reader036/viewer/2022082518/56814354550346895dafd167/html5/thumbnails/1.jpg)
ZILOG Z80ZILOG Z80Formatos de Formatos de instruccióninstrucción
Alberto de Miguel ValduncielMiriam Aguado GagoFernando Martín Sánchez
![Page 2: ZILOG Z80 Formatos de instrucción](https://reader036.vdocuments.co/reader036/viewer/2022082518/56814354550346895dafd167/html5/thumbnails/2.jpg)
INTRODUCCIÓNINTRODUCCIÓN
Su diseño dependió de la búsqueda de Su diseño dependió de la búsqueda de compatibilidad con las inst. del intel 8080compatibilidad con las inst. del intel 8080
El tamaño de instrucción varía entre 1 y El tamaño de instrucción varía entre 1 y 4 bytes4 bytes
El primer (o primer y segundo) byte El primer (o primer y segundo) byte corresponde al código de operación.corresponde al código de operación.
El resto se emplea para desplazamientos/ El resto se emplea para desplazamientos/ operandos inmediatos.operandos inmediatos.
![Page 3: ZILOG Z80 Formatos de instrucción](https://reader036.vdocuments.co/reader036/viewer/2022082518/56814354550346895dafd167/html5/thumbnails/3.jpg)
Lectura de instruccionesLectura de instrucciones
Al ser el Z-80 un procesador de 8 bits, Al ser el Z-80 un procesador de 8 bits, cada vez que accede a memoria lee un cada vez que accede a memoria lee un byte ( código de operación o dato).byte ( código de operación o dato).
2^8 =256 Lo cuál permitiría codificar 2^8 =256 Lo cuál permitiría codificar hasta 256 instrucciones distintashasta 256 instrucciones distintas
El Z-80 tiene más de 256 inst. , lo que le El Z-80 tiene más de 256 inst. , lo que le obliga a usar códigos de operación de obliga a usar códigos de operación de más de un byte en algunos casos.más de un byte en algunos casos.
![Page 4: ZILOG Z80 Formatos de instrucción](https://reader036.vdocuments.co/reader036/viewer/2022082518/56814354550346895dafd167/html5/thumbnails/4.jpg)
![Page 5: ZILOG Z80 Formatos de instrucción](https://reader036.vdocuments.co/reader036/viewer/2022082518/56814354550346895dafd167/html5/thumbnails/5.jpg)
Tipos de instruccionesTipos de instrucciones
Carga e intercambioCarga e intercambio Aritméticas y lógicasAritméticas y lógicas Rotación y desplazamientoRotación y desplazamiento Manipulación de bitsManipulación de bits Salto , llamada y retorno.Salto , llamada y retorno. Entrada y salidaEntrada y salida Control de CPUControl de CPU
![Page 6: ZILOG Z80 Formatos de instrucción](https://reader036.vdocuments.co/reader036/viewer/2022082518/56814354550346895dafd167/html5/thumbnails/6.jpg)
Análisis de las Análisis de las instruccionesinstrucciones
Para decodificar la instrucción, Para decodificar la instrucción, analizamos los dos primeros bits.analizamos los dos primeros bits.
Estos dos bits codifican 4 casos :Estos dos bits codifican 4 casos :
00,01,10,1100,01,10,11
![Page 7: ZILOG Z80 Formatos de instrucción](https://reader036.vdocuments.co/reader036/viewer/2022082518/56814354550346895dafd167/html5/thumbnails/7.jpg)
Instrucciones de carga Instrucciones de carga entre Registros (LD)entre Registros (LD)
II(7:6) (7:6) = 01 = 01
EJEMPLO:
Para cargar E en A( LD E,A ) en binario seria 01 011(E) 111(A).
![Page 8: ZILOG Z80 Formatos de instrucción](https://reader036.vdocuments.co/reader036/viewer/2022082518/56814354550346895dafd167/html5/thumbnails/8.jpg)
Instrucciones ariméticas Instrucciones ariméticas y lógicas de 8 bitsy lógicas de 8 bits
II(7:6) (7:6) = 10 = 10
EJEMPLO: ADD A,r Suma del contenido del ADD A,r Suma del contenido del
registro A con el contenido del registro registro A con el contenido del registro r: r: 10 000 r 10 000 r
Para multiplicar por dos A(111), seria Para multiplicar por dos A(111), seria ADD A,A y en binario 10 000 111ADD A,A y en binario 10 000 111
![Page 9: ZILOG Z80 Formatos de instrucción](https://reader036.vdocuments.co/reader036/viewer/2022082518/56814354550346895dafd167/html5/thumbnails/9.jpg)
Transferencias entre memoria Transferencias entre memoria y registros, cargas ctes, y registros, cargas ctes,
instrucciones aritmético-instrucciones aritmético-lógicas de 16 bits y saltos lógicas de 16 bits y saltos
relativos.relativos. II(7:6) (7:6) = 00 = 00
EJEMPLO:
LD r, n => 00 r 110 nLD A,20 => 00 111 110 00010100
DEC r => 00 r 101
![Page 10: ZILOG Z80 Formatos de instrucción](https://reader036.vdocuments.co/reader036/viewer/2022082518/56814354550346895dafd167/html5/thumbnails/10.jpg)
Salto absoluto, llamada y Salto absoluto, llamada y retorno de subrutina, manejo retorno de subrutina, manejo
de pila.de pila. II(7:6) (7:6) = 11 = 11 Código de operación: DD, FD, ED, Código de operación: DD, FD, ED,
CBCB
EJEMPLO:
PUSH BC => 11 00 0101
![Page 11: ZILOG Z80 Formatos de instrucción](https://reader036.vdocuments.co/reader036/viewer/2022082518/56814354550346895dafd167/html5/thumbnails/11.jpg)
Añadidas en el Z80Añadidas en el Z80
II(7:6) (7:6) = 11 = 11 1er byte código de operación: DD, FD, 1er byte código de operación: DD, FD,
ED, CBED, CB Extienden cod. Operación al siguiente
byte. Instrucciones ya existentes en el 8080
que utilizan nuevos registros Operaciones sobre bloques,
manipulación directa de bits
![Page 12: ZILOG Z80 Formatos de instrucción](https://reader036.vdocuments.co/reader036/viewer/2022082518/56814354550346895dafd167/html5/thumbnails/12.jpg)
BIBLIOGRAFÍABIBLIOGRAFÍA
Apuntes de la asignaturaApuntes de la asignatura http://proton.ucting.udg.mx/dpto/http://proton.ucting.udg.mx/dpto/
maestros/mateos/z80/arquitectura/maestros/mateos/z80/arquitectura/arquitectura.htmlarquitectura.html
http://en.wikipedia.org/wiki/Zilog_Z80http://en.wikipedia.org/wiki/Zilog_Z80 http://www.eie.fceia.unr.edu.ar/http://www.eie.fceia.unr.edu.ar/
proyectos/apunte-tec-dig/proyectos/apunte-tec-dig/MicroprocesadorZ80.htmlMicroprocesadorZ80.html
http://www.speccy.org/curso-cm/http://www.speccy.org/curso-cm/fr_cap3.htmlfr_cap3.html