Instrucciones
Una
instrucción es un enunciado que se vuelve ejecutable cuando se ensambla un
programa
El
ensamblador traduce las instrucciones en bytes de lenguaje de maquina, para que
el CPU los cargue y los lleve a cabo en tiempo de ejecución.
Una
instrucción contiene cuatro partes básicas:
·
Etiqueta
(opcional).
·
Nemónico
de instrucción (requerido)
·
Operando(s)
(por lo general, son requeridos)
·
Comentarios
(opcional).
Ésta es la
sintaxis básica:
[etiqueta:] nemónico operando(s) [comentarios]
Formato
de una Instrucción
Un nemónico
de instrucción es una palabra corta que identifica a una instrucción. En
ingles, un nemónico es un dispositivo que ayuda a la memoria. De manera
similar, los nemónicos de instrucciones en le lenguaje ensamblador,
proporcionan sugerencias acerca del tipo de operación que realizan.
MOV mueve un datos a un destino
ADD suma
dos valores
SUB resta
dos valores
JMP salta
a una nueva ubicación
CALL llama
a un procedimiento
Un salto en
lenguaje de maquina es hacer un cambio de secuencia del programa en
direccionamiento en forma intencional.
Salto
a direcciones mas bajas
23553 MOV AX,6500
.
.
.
23567 JMP 23553
Salto
a direcciones mas altas
D3A81 JMP D3A97
.
.
.
D3A97 XCHG BH,DL
Ya que el
direccionamiento de una instrucción es dado por los registros CS e IP, estos son los que se moveran cuando se genere
un salto.
D.R. = (CS *
10) + IP
Los saltos
se pueden realizar dentro del mismo segmento o se pueden transferir a otro
segmento diferente.
Saltos
Condicionales
JXXX
Tiene
un tamaño de 8 bitsabarca de 00
hasta FF y tiene signo. XXX Representa la condición
Esta
condición se maneja por medio de las banderas de estado: CF, OF, ZF, PF y SF.
El +128
significa que el desplazamiento es positivo. Valor hexadecimal del 00 al 7F,
ejem.
JXXX 48
La manera
tradicional de manejar la instrucción es colocar el valor del desplazamiento
(positivo o negativo).
En el debug
en el parámetro desplazamiento se coloca la dirección a donde va a saltar.
CICLOS
LOOP : Tiene
un tamaño de 8 bitsabarca de 00
hasta FF y tiene signo .
Ejecutar un
BUCLE consiste en repetir “n” veces una serie de instrucciones de una sección
del programa.
Esta
instrucción, en el momento que se ejecuta, realiza los siguientes pasos:
1°Decrementa
a CX en un uno.(CX=CX-1)
2°Checa el
valor de CX, y
-SI CX es diferente de cero, realiza el
salto correspondiente de acuerdo al valor del desplazamiento.
-Si CX es igual a cero, continua con la siguiente instrucción debajo de ella.
Operadores lógicos
AND: FUNCION LOGICA “Y
OR: FUNCION LOGICA “O”
XOR: FUNCION LOGICA “O” EXCLUSIVO
TEST: FUNCION LOGICA “Y” SIN RESULTADO
Banderas
afectadas: AF , ZF ,
PF , SF
Bien; 6 en el lab.
ResponderEliminarBuenos datos se entiende. Se ilumino mas mi mente.
ResponderEliminar