Unidad iii y iv -modularizacion lenguaje ensamblador

Solo disponible en BuenasTareas
  • Páginas : 12 (2919 palabras )
  • Descarga(s) : 0
  • Publicado : 2 de enero de 2012
Leer documento completo
Vista previa del texto
INSTITUTO TECNOLOGICO DE CHILPANCINGO

INGENIERIA EN SISTEMAS COMPUTACIONALES

LENGUAJE ENSAMBLADOR

UNIDAD III Y IV
Modularizacion y Programación hibrida

“REPORTE DE UNIDADES”

LUIS ALBERTO PEREZ BOLIVAR 09520463

FECHA
3 DE ENERO DEL 2012

Modularizacion
¿CUANDO ES ÚTIL LA MODULARIZACIÓN ?
Este enfoque de segmentación o modularizacion es útil en dos casos:
Cuando existeun grupo de instrucciones o una tarea especifica que deba ejecutarse en más de una ocasión.
PROCESO DE MODULARIZACION.
El proceso de segmentación consiste en hacer una abstracción del problema, del cual se tiene inicialmente un panorama general. Enseguida, se procede a “desmenuzar” o “dividir” el problema en partes pequeñas y simples, como se muestra : Se forma un primer modulo enunciando elproblema en términos de la solución a éste.
!! MACRO INTERNO
Una macro, es un conjunto de instrucciones que se pueden mandar a llamar desde cualquier parte del programa.
Para definir una macro, se utiliza la directiva MACRO. El formato de esta directiva es :
(nombre_de_macro) MACRO (lista_parámetros)
Una macro consta de tres partes esenciales:
a) CABECERA: Contiene el nombre de lamacro, la pseudo-op MACRO y opcionalmente, variables ficticias que serán pasadas desde la macro.
b) CUERPO: Contiene el código real que será insertado en cualquier programa que llame al nombre de la macro.
c) FIN: Debe incluir la sentencia ENDM.

PROGRAMAS
PROGRAMAS REALIZADOS EN CLASES
//PROGRAMA EN ENSAMBLADOR QUE IMPRIME LOS INTEGRANTES DEL EQUIPO LOS PECHANES
model small
.stack
.datasaludo db "LOS PECHANES EDGAR SALGADO ZAMORANO zumpango2007@hotmail.com LUIS ALBERTO PEREZ BOLIVAR behime_dark@hotmail.com OTNIEL SOLANO PELAEZ osp_z6mcl@live.com.mx ", "$"
.code
main proc ;Inicia proceso
mov ax,seg saludo ;hmm ¿seg?
mov ds,ax ;ds = ax = saludo
mov ah,09 ;Function(print string)
lea dx,saludo ;DX =String terminated by "$"
int 21h ;Interruptions DOS Functions
;mensaje en pantalla
mov ax,4c00h ;Function (Quit with exit code (EXIT))
int 21h ;Interruption DOS Functions
main endp ;Termina proceso
end main-----------------------------------------------------------------------------------------------------------------------------------
///PROGRAM EN ENSAMBLADOR QUE IMPRIME EL ABECEDARIO HASTA LA Z
.model small
.Stack
.code

PRINT_A_J: PROC
MOV DL,'A'
MOV CX,10

PRINT_LOOP:
CALL WRITE_CHAR:
INC DL
LOOP PRINT_LOOP:
MOV AH,4CH
INT 21h
PRINT_A_J: ENDP

WRITE_CHAR: PROC

MOV AH,2h
INT 21H
RET

WRITE_CHAR: ENDP
END PRINT_A_J:<-----------------------------------------------------------------------------------------------------------------------------------
//PROGRAMA NUMERO 8: PROGRAMA QUE NOS MUESTRA UN IMPRESIÓN DE NOMBRE DEL TEC
milapi segment stack
db 64 dup('!!!pila')
milapi ends
mitoda segment
gar db 'intituto tecnologico de chilpancingo','$'
crcf db 0dh,0ah, '$'
mitoda ends
migropa segment
assume cs: migropa, ds : mitoda

main proc
stre:
mov ax,mitoda
movds,ax
lea dx,gar
mov ah,09h
int 21h
lea dx,crcf
int 21h
mov ah,09h
int 21h
mov ah,04ch
mov al,0
int 21h
main endp
migropa ends
end stre

-----------------------------------------------------------------------------------------------------------------------------------
//PROGRAMA NUMERO 6: PROGRAMA QUE NOS MUESTRA UN (*)
dosseg
.model small
.stack
.code
write procmov ah,2h
mov dl,2ah
int 21h
mov ah,4ch
int 21h
write endp
end write
-----------------------------------------------------------------------------------------------------------------------------------
//PROGRAMA NUMERO 5: NOS MUESTRA UNA SERIE DE IMPRESIONES
.model small
.stack
.code

PRINT_ASCII PROC
MOV DL,00h
MOV CX,255
PRINT_LOOP:
CALL WRITE_CHAR
INC DL
LOOP PRINT_LOOP...
tracking img