Microprocesadores Tema5N
Microprocesadores
1121060
Tema 5.
Programación Modular.
Microprocesadores 1121060
Tema 5. Programación Modular.
1.
Tipos de datos en ensamblador
1.1 Enteros, booleanos y caracteres
1.2 Arreglos y Registros
2.
Estructuras de control en ensamblador
2.1 Estructuras de selección (tipo if-then-else) y de
selección múltiple (tipo case)
2.2 Estructuras de repetición(tipo for, while y repeat)
3.
4.
5.
Directivas
Diseño de Programas
3.1 Programación Modular
3.2 Macros
Depuración
Tema 5. Programación Modular.
Tipos de datos en ensamblador
Enteros
Sin signo
Tamaño byte 0 a 255
Tamaño palabra 0 a 65535
Con signo
Tamaño byte -128 a +127
Tamaño palabra -32768 a +32767
Números codificados en BCD (0 al 9)
Almacenados en forma Empaquetada
Almacenados en forma Desempaquetada
Datos codificados en ASCII (American Standard
Code for Information Interchange)
Tema 5. Programación Modular.
Tipos de datos en ensamblador
MSB
BCD
Empaquetado
D7
LSB
D4 D3
Dígito 1 en BCD
BCD
Caracter
ASCII
Dígito 0 en BCD
MSB
LSB
D3
Desempaquetado
MSB
D0
D0
Dígito en BCD
LSB
D7
D0
Caracter en ASCII
Tema 5. Programación Modular.
Tipos de datosen ensamblador
Caracteres
ASCII
Tema 5. Programación Modular
Estructuras de control en ensamblador
EL término estructurado aplica a ciertas declaraciones
estándar de un programa de alto nivel que pueden ser
traducidas cuidadosamente a código ensamblador. Los
programadores de lenguaje de alto nivel tratan de
usar algunas estructuras de programación básicas
para resolver la mayoría de susproblemas. Alguien
que haya programado en BASIC, Pascal o C estará
familiarizado con estructuras de programación
estándar como las siguientes:
IF.... THEN
IF ....THEN .....ELSE
DO....WHILE
DO....UNTIL
CASE
FOR
Tema 5. Programación Modular.
Estructuras de control en ensamblador
IF simple
Ejemplo:
mov al,A
cmp al,B
jae salir
then:inc cx
mov bx,cx
salir:--------
IF.... THEN
Tema 5.Programación Modular.
Estructuras de control en ensamblador
IF ....THEN .....ELSE
opcionB:
opcionA:
Salir:
mov al,A
cmp al,B
jbe opcionA
dec cx
jmp salir
inc cx
-----------
IF ....THEN .....ELSE
Tema 5. Programación Modular.
Estructuras de control en ensamblador
DO....WHILE con
prueba al inicio
ciclo:
salir:
mov al,A
cmp al,B
je salir
dec cx
⋮
jmp ciclo
-----------
DO....WHILE con pruebaal inicio
Tema 5. Programación Modular.
Estructuras de control en ensamblador
DO.....WHILE con prueba al
final
ciclo:
dec cx
⋮
if:
mov al,A
cmp al,B
je salir
jmp ciclo
-----------
salir:
DO.....WHILE con prueba al final
Tema 5. Programación Modular.
Estructuras de control en ensamblador
CASE
cmp AH,01
jne dos
;codigo de AH=1
⋮
jmp salirIF
dos: cmp AH,02
jne tres
;codigo de AH=2
⋮
jmpsalirIF
tres: cmp AH,03
jne cuatro
;codigo de AH=3
⋮
jmp salirIF
cuatro:
cmp AH,04
jne otra
;codigo de AH=4
⋮
salirIF:
------------
FOR
xx:
mov cx,20
------------------------loop xx
______________________________
mov cont,1
for: ------------------dec cont
jnz for
Tema 5. Programación Modular.
Diseño de Programas
3. Directivas
4. Diseño de Programas
3.1 Programación Modular
3.2 Macros
5.Depuración
Tema 5. Programación Modular.
Diseño de Programas
A medida que los programas crecen en tamaño y complejidad se
vuelve difícil depurarlos. Por lo que resulta conveniente dividir el
programa en varias partes llamadas procedimientos.
Un procedimiento es una colección de instrucciones
relacionadas que realiza una tarea específica. También un
procedimiento puede contener unconjunto de instrucciones que
se ejecutan en varias partes del programa.
Los procedimientos del lenguaje ensamblador tienen su
contraparte en los lenguajes de alto nivel, por ejemplo, en el
lenguaje C estos procedimientos se llaman funciones. Aunque en
los lenguajes de alto nivel, el mecanismo empleado por los
procedimientos para implementar su llamada, ejecución y regreso
es transparente para el...
Regístrate para leer el documento completo.