Instrucciones del ensamblador
1
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS
FACULTAD DE INGENIERIA DE SISTEMAS E INFORMATICA
ESCUELA ACADEMICO PROFESIONAL DE INGENIERIA DE SISTEMAS
APUNTES DE CURSO
“CURSO DE SISTEMAS DIGITALES”
LENGUAJE ENSAMBLADOR
INSTRUCCIONES FUNDAMENTALES
Lic. WALTER PEDRO CONTRERAS FLORES
LIMA – PERU
Lic. Walter Contreras Flores
LENGUAJE ASSEMBLER
2CAPITULO I
INTRODUCCION
El presente material tiene como finalidad de servir como apuntes de
consulta o guía para el alumno universitario que entre el conjunto de
materias ti ene como curso a la asignatura de sistemas digitales y/o
lenguaje de programación assembler.
Se describe y explica las principales instrucciones del lenguaje assembler.
Un lenguaje de bajo nivel que permite de maneradirecta tener acceso a los
recursos físicos de la computadora como a los registros internos del
procesador, a la memoria principal. Este lenguaje permite construir
programas de una comunicación muy directa con la maquina. Se explica
mediante gráficos didácticos la funcionalidad y uso de cada u na de las
instrucciones con el fin de que sea digerible para el estudiante.
Deseando que el presente lesea de gran utilidad para afianzar sus
conocimientos en su formación profesional, agradeceré si tuviera alguna
sugerencia para hacer de este material rico de conocimientos, hiciera llegar
su sugerencia al autor.
Lic. Walter Contreras Flores
LENGUAJE ASSEMBLER
3
CAPITULO II
INSTRUCCIONES FUNDAMENTALES DEL LENGUAJE ASSEMBLER
2.1
INSTRUCCION DE TRANSFERENCIA DE DATOS
MOVPermite realizar la copia del valor del operando fuente al
operando destino.
Formato General:
Formato Específicos:
MOV destino, fuente
Lógica:
Destino
fuente
Flags Afectados:
OF
SF
ZF
AF
PF
CF
MOV
MOV
MOV
MOV
MOV
reg, reg
reg, mem
reg, dato
mem, reg
mem, dato
Nota Importante, no procedente la copia de dato de memoria a
memoria, registrosegmento a registro segmento, dato inmediato
a registro segmento.
Ejemplos
1. Colocar el valor 15 en el registro AH.
MOV AH,15 ; ......
Antes de
AH
10000100
Después de
AH
00001111
Lic. Walter Contreras Flores
15
LENGUAJE ASSEMBLER
4
2. Almacenar en el registro BX el número 2500.
MOV BX,2500 ; .......
Antes de
BX
0000001111101000
2500
Después de
BX0000100111000100
3. Almacenar el nro. 5AF3h en memoria en la dirección 44005.
MOV
MOV
MOV
MOV
BX,4400h
DS,BX
BX,5
WORD PTR [BX],5AF3h ; ..........
Antes de
Memoria Principal
4400:0005 11110000
4400:0006 01011111
Después de
Memoria Principal
4400:0005 11110011
4400:0006 01011010
Lic. Walter Contreras Flores
5AF3h
LENGUAJE ASSEMBLER
5
4. El valoralmacenado en la dirección 17600h almacenarlo en la
dirección 39008h (dos bytes).
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
CX,1760h
DS,CX
BX,0
AX,3900h
ES,AX
SI,8
AX,[BX] ; ........
ES:[SI],AX ; ...
Antes de
Memoria Principal
1760:0000 01010011
1760:0001 10101111
3900:0008 01010101
3900:0009 10101011
DX
1010111101010011
Después de
Memoria Principal
1760:000001010011
1760:0001 10101111
3900:0008 01010011
3900:0009 10101111
Lic. Walter Contreras Flores
LENGUAJE ASSEMBLER
2.2
6
INSTRUCCIONES ARITMETICAS
ADD Permite realizar la adición de números binarios.
Formato General:
Formato Específicos:
ADD destino, fuente
ADD
ADD
ADD
ADD
ADD
Lógica:
destino
destino + fuente
Flags Afectados:
OF
SF
ZF
AF
PF
reg, reg
reg, mem
reg, dato
mem, reg
mem, dato
CF
Ejemplos
1. Realizar la suma de los números 15 y 32.
MOV BH,32
MOV DL,15
ADD BH,DL ; .......
Antes de
BH
DL
00100000
00001111
Después de
+
BH
DL
00101111
00001111
Flags
Antes de
OF SF ZF AF PF CF
* * * * * *
Lic. Walter Contreras Flores
Después de
OF SF ZF AF PF CF...
Regístrate para leer el documento completo.