Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Facultad de Ingeniería
en Ciencias de la
Computación y
Telecomunicaciones
Instrucciones de movimientos de datos
(MOV, POP, PUSH)
Instrucciones aritméticas
(ADD, SUB, ADC, SBB)
Instrucciones de conteo
(INC, DEC)
INTEGRANTES:
MATERIA:
DOCENTE:
Contenido
1.-INTRODUCCION ......................................................................................................................... 4
1.1. Instrucciones de Transferencia de Datos (Microprocesadores 8086/8088). ............... 4
1.2. Instrucciones Aritméticas..................................................................................................... 4
1.3. Instrucciones de Conteo ...................................................................................................... 6
Son instrucciones de incremento y decremento de operandos y son: .................................... 6
INC .............................................................................................................................................. 6
DEC ............................................................................................................................................ 6
2. Instrucciones de movimientos (MOV, PUSH, POP) ............................................................... 6
2.1. Mov ......................................................................................................................................... 6
2.1.1. Implementaciones ......................................................................................................... 6
2.1.2. Sintaxis ............................................................................................................................ 6
2.1.3. Ejemplos: ........................................................................................................................ 6
2.2. PUSH ...................................................................................................................................... 7
2.2.1. Descripción ..................................................................................................................... 7
2.2.2. Formato ........................................................................................................................... 8
2.2.3. Ejemplo: .......................................................................................................................... 8
2.3. POP......................................................................................................................................... 8
2.3.1. Descripción ..................................................................................................................... 8
2.3.2. Formato ........................................................................................................................... 8
2.3.3. Ejemplo ........................................................................................................................... 9
3. Instrucciones Aritméticas (ADD, SUB, ADC, SBB). ............................................................. 10
3.1. ADD....................................................................................................................................... 10
3.1.1. Descripción ................................................................................................................... 10
3.1.2. Formato ......................................................................................................................... 10
3.1.3. Ejemplo ......................................................................................................................... 10
3.2. SUB ....................................................................................................................................... 11
3.2.1. Descripción ................................................................................................................... 11
3.2.2. Formato ......................................................................................................................... 11
3.2.3. Ejemplo ......................................................................................................................... 11
3.3. ADC....................................................................................................................................... 11
3.3.1. Descripción ................................................................................................................... 11
3.3.2. Formato ......................................................................................................................... 12
3.3.3. Ejemplo ......................................................................................................................... 12
3.4. SBB ....................................................................................................................................... 12
3.4.1. Descripción ................................................................................................................... 12
3.4.2. Formato ......................................................................................................................... 12
3.4.3. Ejemplo ......................................................................................................................... 12
4. Instrucciones de conteo (INC, DEC) ....................................................................................... 13
4.1. INC ........................................................................................................................................ 13
4.1.1. Descripción ................................................................................................................... 13
4.1.2. Formato ......................................................................................................................... 13
4.1.3. Ejemplo ......................................................................................................................... 13
4.2. DEC....................................................................................................................................... 13
4.2.1. Descripción ................................................................................................................... 13
4.2.2. Formato ......................................................................................................................... 13
4.2.3. Ejemplo ......................................................................................................................... 14
5. Bibliografía .................................................................................................................................. 14
1.-INTRODUCCION
Estas instrucciones mueven datos de una parte a otra del sistema; desde y hacia
la memoria principal, de y a los registros de datos, puertos de E/S y registros de
segmentación.
MOV transfiere
XCHG intercambia
IN Entrada
OUT salida
XLAT traduce usando una tabla
LEA carga la dirección efectiva
LDS carga el segmento de datos
LES carga el segmento extra
LAHF carga los indicadores en AH
SAHF guarda AH en los indicadores
PUSH FUENTE (sp) ‹‹ fuente
POP DESTINO destino ‹‹ (sp)
a. Grupo de adición:
ADD suma
ADC suma con acarreo
AAA ajuste ASCII para la suma
DAA ajuste decimal para la suma
b. Grupo de sustracción:
SUB resta
SBB resta con acarreo negativo
AAS ajuste ASCII para la resta
DAS ajuste decimal para la resta
4
c. Grupo de multiplicación:
MUL multiplicación
IMUL multiplicación entera
AAM ajuste ASCII para la multiplicación
d. Grupo de división:
DIV división
IDIV división entera
AAD ajuste ASCII para la división
e. Conversiones:
f. Tratamiento de cadenas:
5
1.3. Instrucciones de Conteo
INC
DEC
2.1. Mov
Adicionalmente mov también permite el uso de datos absolutos, como por ejemplo
mover el número 10 a un registro del procesador.
2.1.1. Implementaciones
Está disponible en procesadores intel pentium, amd y sparc entre muchos otros,
es a la práctica, una instrucción de ensamblador básica en cualquier procesador.
2.1.2. Sintaxis
La sintaxis en ensamblador es variable en dependencia del procesador utilizado.
La instrucción mov, seguido del destino de los datos, ya sea un registro del
procesador o una posición de memoria, una coma que actúa como separador y a
continuación, la fuente de los datos o los datos en si, de forma absoluta.
2.1.3. Ejemplos:
6
MOV reg ,mem MOV ch,[40ffh]
2.2. PUSH
2.2.1. Descripción
7
2.2.2. Formato
Como decrementa el puntero de pila (SP) en 2 y luego transfiere la palabra que se
ha especificado en el operando origen a lo alto de la pila.
Su formato es:
PUSH, origen
2.2.3. Ejemplo:
push ax
push bx dx 59
push cx
push dx cx 4b
bx 41
ax 4f
2.3. POP
2.3.1. Descripción
Esta instrucción transfiere el último valor almacenado en la pila al operando
destino, después incrementa en dos el registro SP.
Este incremento se debe a que la pila va creciendo desde la dirección más alta de
memoria del segmento hacia la más baja, y la pila solo trabaja con palabras (2
bytes), entonces al incrementar en dos el registro SP realmente se le está
restando dos al tamaño real de la pila.
2.3.2. Formato
Como transfiere un byte o una palabra desde la cima de la pila al operando
destino y luego incrementa la pila en 2.
Si al ejemplo anterior:
push ax
push bx dx 59
push cx
push dx cx 4b
bx 41
ax 4f
xor ax, ax
xor bx, bx
xor cx, cx
xor dx, dx
pop, ax
pop, bx
pop, cx
pop, dx
ax 59
Obtendremos lo siguiente:
bx 4b
cx 41
dx 4f
9
Como pudimos observar los valores cambiaron ya que inicialmente
teníamos:
Ax 4f
Bx 41
Cx 4b
Dx 59
3.1. ADD
3.1.1. Descripción
3.1.2. Formato
Nota.- los dos operandos deben ser del mismo tipo (tamaño).
3.1.3. Ejemplo
Ejemplos:
ADD ax, bx
ADD si, di
ADD [BETA], ax
ADD ah, [bx]
ADD byte ptr[di-2], 2
10
MOV bx, 4398h
ADD [di], 0abcdh
3.2. SUB
3.2.1. Descripción
3.2.2. Formato
3.2.3. Ejemplo
Ejemplo:
3.3. ADC
3.3.1. Descripción
Lleva a cabo la suma de dos operandos y suma uno al resultado en caso de que la
bandera CF esté activada, esto es, en caso de que exista acarreo. El resultado se
guarda en el operando destino. Realiza la suma de dos operandos identificándolos
como origen y destino más bandera de acarreo (CF).
11
3.3.2. Formato
3.3.3. Ejemplo
3.4. SBB
3.4.1. Descripción
3.4.2. Formato
Su formato es:
SBB dx,cx
Si CF=1 (si hay acarreo) entonces DX=DX-CX-1
Otros ejemplos:
12
4. Instrucciones de conteo (INC, DEC)
4.1. INC
4.1.1. Descripción
Su formato es el siguiente:
INC Destino
4.1.3. Ejemplo
4.2. DEC
4.2.1. Descripción
4.2.2. Formato
Su formato es el siguiente:
DEC Destino
13
4.2.3. Ejemplo
5. Bibliografía
fcqi.tij.uabc.mx
https://es.wikibooks.org
http://edsacom.pbworks.com
https://es.wikipedia.org
http://www.lawebdelprogramador.com
http://ict.udlap.mx
14