Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Lenguaje Maquina y Ensamblador
Lenguaje Maquina y Ensamblador
Curso 2008-2009
Tema 4:
Transparencia: 2 / 47
ndice
Introduccin
Juego de instrucciones
Estructura de un programa ensamblador del i80x86/88
Modos de direccionamiento
Ejemplo de hardware real: i80x86/88
Segmentacin de memoria en i80x86/88
Modos de direccionamiento en el i80x86/88
Formato de instrucciones:
Ejemplos de instrucciones
Formato de instrucciones en i80x86/88
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
Estructura de Computadores
I. T. I. de Gestin / Sistemas
Tema 4:
Transparencia: 3 / 47
Introduccin (I)
Instruccin:
Operacin expresada mediante la codificacin binaria de
cadenas de 1's y 0's. Se le denomina lenguaje mquina
Tema 4:
Estructura de Computadores
I. T. I. de Gestin / Sistemas
Transparencia: 4 / 47
Introduccin (y II)
Programa:
Conjunto ordenado de instrucciones que resuelve una tarea
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
Estructura de Computadores
I. T. I. de Gestin / Sistemas
Tema 4:
Transparencia: 5 / 47
Tema 4:
Estructura de Computadores
I. T. I. de Gestin / Sistemas
Transparencia: 6 / 47
MOV
PUSH
POP
SP - 2
[SP]
Operando fuente
transfiere el ltimo dato de la pila al operando destino
Operando destino [SP]
SP SP + 2
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
Estructura de Computadores
I. T. I. de Gestin / Sistemas
Tema 4:
Transparencia: 7 / 47
Tema 4:
Estructura de Computadores
I. T. I. de Gestin / Sistemas
Transparencia: 8 / 47
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
Estructura de Computadores
I. T. I. de Gestin / Sistemas
Tema 4:
Transparencia: 9 / 47
[N]
[E]
P - Paridad
PE - Paridad par
PO - Paridad impar
CXZ - CX=0
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
Estructura de Computadores
I. T. I. de Gestin / Sistemas
Tema 4:
Transparencia: 10 / 47
Ejemplo:
MOV CX, 4
Bucle:
INC BX
ADD BX, CX
LOOP Bucle
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
Estructura de Computadores
I. T. I. de Gestin / Sistemas
Tema 4:
Transparencia: 11 / 47
Direccin de retorno
1234h
1234h
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
Estructura de Computadores
I. T. I. de Gestin / Sistemas
Tema 4:
Transparencia: 12 / 47
Direccin de retorno
SP
1234h
1234h
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
Estructura de Computadores
I. T. I. de Gestin / Sistemas
Tema 4:
Transparencia: 13 / 47
Pueden ser:
Interrupciones hardware: son generadas por los circuitos
asociados al microprocesador en respuesta a algn evento como
pulsar una tecla del teclado
Interrupciones software: son generadas por un programa para
llamar a ciertas subrutinas almacenadas en memoria ROM o RAM.
Es posible cambiarlas y crear otras nuevas.
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
Estructura de Computadores
I. T. I. de Gestin / Sistemas
Tema 4:
Transparencia: 14 / 47
INT:
SP
1234h
Direccin de retorno
Flags
1234h
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
Estructura de Computadores
I. T. I. de Gestin / Sistemas
Tema 4:
Transparencia: 15 / 47
IRET:
Direccin de retorno
Flags
SP
1234h
1234h
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
Tema 4:
Estructura de Computadores
I. T. I. de Gestin / Sistemas
Transparencia: 16 / 47
Estructura de Computadores
I. T. I. de Gestin / Sistemas
Tema 4:
Transparencia: 17 / 47
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
Estructura de Computadores
I. T. I. de Gestin / Sistemas
Tema 4:
Transparencia: 18 / 47
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
Estructura de Computadores
I. T. I. de Gestin / Sistemas
Tema 4:
Transparencia: 19 / 47
Tema 4:
Estructura de Computadores
I. T. I. de Gestin / Sistemas
Transparencia: 20 / 47
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
Estructura de Computadores
I. T. I. de Gestin / Sistemas
10
Tema 4:
Transparencia: 21 / 47
Tema 4:
Estructura de Computadores
I. T. I. de Gestin / Sistemas
Transparencia: 22 / 47
P 8086/88
Inmediato
A registro
(No existe)
Directo
Solamente para saltos
Relativo a base
Mediante ndice
Mediante ndice y base
A pila
Ejemplos
MOV AX, 15H
MOV AX, BX
MOV CX, ETIQUETA
MOV BX+ARTCULO, AL
MOV DL, VECTOR[SI]
MOV AH, [BH][SI]+ARRAY
PUSH BX
(No existe)
Algunas instrucciones
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
Estructura de Computadores
I. T. I. de Gestin / Sistemas
11
Tema 4:
Transparencia: 23 / 47
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
Tema 4:
Estructura de Computadores
I. T. I. de Gestin / Sistemas
Transparencia: 24 / 47
Ejemplos:
MOV AX, BX
MOV CX, Etiqueta
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
Estructura de Computadores
I. T. I. de Gestin / Sistemas
12
Tema 4:
Transparencia: 25 / 47
Ejemplos:
MOV AL, [BX]
ADD CH, Numero[SI]
MOV BL, [SP+4]
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
Estructura de Computadores
I. T. I. de Gestin / Sistemas
Tema 4:
Transparencia: 26 / 47
Registro de referencia
DE = CP + desplazamiento
Un registro base (R B)
DE = RB + desplazamiento
Un registro ndice (R I)
DE = RI + desplazamiento
Relativo a pila
DE = SP + desplazamiento
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
Estructura de Computadores
I. T. I. de Gestin / Sistemas
13
Tema 4:
Transparencia: 27 / 47
Ejemplos:
MOV AL, [ [100] ]
MOV CL, [[B + 1234h]]
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
Estructura de Computadores
I. T. I. de Gestin / Sistemas
Tema 4:
Transparencia: 28 / 47
Ejemplos:
MUL BX DX,AX = AX x BX
donde AX y DX son operandos implcitos
RET
realiza las siguientes operaciones:
IP [SP]
SP SP +2
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
Estructura de Computadores
I. T. I. de Gestin / Sistemas
14
Tema 4:
Transparencia: 29 / 47
Registros de datos
AX
BX
CX
AH
BH
CH
AL
BL
CL
DX
DH
DL
Lgica de
control
Direccin/dato
(20 patillas)
Punteros
Registros de
segmentos
SP
BP
CS
SS
ALU
SI
DS
ES
PSW
DI
IP
Control
(16 patillas)
+5V
Tierra
Reloj
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
Tema 4:
Estructura de Computadores
I. T. I. de Gestin / Sistemas
Transparencia: 30 / 47
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
Funcin
Contiene el cdigo ejecutable
Se reserva para la pila (stack)
Contiene los datos
Segmento extra de datos
Estructura de Computadores
I. T. I. de Gestin / Sistemas
15
Tema 4:
Transparencia: 31 / 47
Registros de segmentos:
SS - Segmento de pila
DS - Segmento de datos
ES - Segmento extra de datos
CS - Segmento de cdigo
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
Estructura de Computadores
I. T. I. de Gestin / Sistemas
Tema 4:
Transparencia: 32 / 47
Registros de datos
AX
BX
CX
AH
BH
CH
AL
BL
CL
DX
DH
DL
La segmentacin se aplica
NICAMENTE al acceder
a Memoria Principal
Lgica de
control
Direccin/dato
Memoria
Principal
(20 patillas)
Punteros
SP
Registros de
segmentos
BP
CS
SS
ALU
SI
DS
ES
PSW
DI
IP
Control
(16 patillas)
+5V
Tierra
Reloj
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
Estructura de Computadores
I. T. I. de Gestin / Sistemas
16
Tema 4:
Transparencia: 33 / 47
Modo de direccionamiento
Ejemplo
Directo
DF = DS x 10h + Etiqueta
Relativo a base
DF = DS x 10h + BX + Elemento
Mediante ndice
DF = DS x 10h + SI + Elemento
DF = DS x 10h + BX + SI + Elemento
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
Tema 4:
Estructura de Computadores
I. T. I. de Gestin / Sistemas
Transparencia: 34 / 47
B. Registros
SI = 0010h
IP = 0025h
SP = 0200h
Memoria
Num= 1500h
EJEMPLOS
Direccin fsica de memoria de la instruccin a ejecutar:
DF = CS x 10h + IP = 0100h x 10h + 0025h = 01025h
Direccin fsica de memoria del operando fuente MOV AL, Num[SI]
DF = DS x 10h + Num + SI = 0200h x 10h + 1500 h + 0010h = 03510h
Direccin fsica en la que se encuentra la cabecera de la pila
DF = SS x 10h + SP = 0300h x 10h + 0200h = 03200h
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
Estructura de Computadores
I. T. I. de Gestin / Sistemas
17
Tema 4:
Transparencia: 35 / 47
Cod. operacin
Operandos
Resultado
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
Estructura de Computadores
I. T. I. de Gestin / Sistemas
Tema 4:
Transparencia: 36 / 47
Operandos
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
Estructura de Computadores
I. T. I. de Gestin / Sistemas
18
Tema 4:
Transparencia: 37 / 47
Z80
Transferencia
Multiplicacin
i80x86/8088 Tipo de
L. Mquina
L. Ensamblador
Operacin
323353
LD (5333), A
M(5333) ! A
Transfiere el contenido del registro A a la
posicin de memoria 5333 h
No existe equivalente
L. Mquina
L. Ensamblador
Operacin
instruccin
Transferencia
Multiplicacin
A33353
MOV [5333], AX M(5333) AX
Transfiere el contenido del registro AX (acumulador)
a la posicin de memoria 5333 h
F7E3
MUL BX
DX,AX AX x BX
Multiplica el contenido de los registros AX y BX, y
deja el resultado en AX y DX (32 bits)
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
Tema 4:
Estructura de Computadores
I. T. I. de Gestin / Sistemas
Transparencia: 38 / 47
Byte 2
DW Mod Reg
Byte 3
Byte 4
R/M
Cdigo de
operacin
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
Estructura de Computadores
I. T. I. de Gestin / Sistemas
19
Tema 4:
Transparencia: 39 / 47
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
Estructura de Computadores
I. T. I. de Gestin / Sistemas
Tema 4:
Transparencia: 40 / 47
REG
W=0
W=1
000
001
010
011
100
101
110
111
AL
CL
DL
BL
AH
CH
DH
BH
AX
CX
DX
BX
SP
BP
SI
DI
MOD Funcin:
00
01
10
11
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
Estructura de Computadores
I. T. I. de Gestin / Sistemas
20
Tema 4:
Transparencia: 41 / 47
Tema 4:
MOD = 01
MOD = 10
[BX]+[SI]+D8 [BX]+[SI]+D16
[BX]+[DI]+D8 [BX]+[DI]+D16
[BP]+[SI]+D8 [BP]+[SI]+D16
[BP]+[DI]+D8 [BP]+[DI]+D16
[SI]+D8
[SI]+D16
[DI]+D8
[DI]+D16
[BP]+D8
[BP]+D16
[BX]+D8
[BX]+D16
Estructura de Computadores
I. T. I. de Gestin / Sistemas
Transparencia: 42 / 47
El bit D indica si el registro que seala el campo REG del segundo byte
es el operando fuente o el destino. En este caso se codificar el registro
BL en el campo REG del segundo byte; por tanto, D ser igual a 1
El bit W debe indicar una operacin de tamao byte. Por esta razn su
valor ser 0
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
Estructura de Computadores
I. T. I. de Gestin / Sistemas
21
Tema 4:
Transparencia: 43 / 47
Tema 4:
Estructura de Computadores
I. T. I. de Gestin / Sistemas
Transparencia: 44 / 47
100010 1 0
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
11 000 011
Estructura de Computadores
I. T. I. de Gestin / Sistemas
22
Tema 4:
Transparencia: 45 / 47
Dir.DatoA
00 011 110
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
Dir.DatoA
00000100 00000000
Estructura de Computadores
I. T. I. de Gestin / Sistemas
Tema 4:
Transparencia: 46 / 47
10 001 100
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
00000000 00000000
Estructura de Computadores
I. T. I. de Gestin / Sistemas
23
Tema 4:
Transparencia: 47 / 47
Bibliografa
Departamento de Automtica
rea de Arquitectura y Tecnologa de Computadores
Estructura de Computadores
I. T. I. de Gestin / Sistemas
24