proyecto
DESCRIPTION
...TRANSCRIPT
-
ESCUELA SUPERIOR POLITCNICA DEL LITORAL
FIEC
Laboratorio de Microprocesadores
Primer Avance del Proyecto
ROTAR LETRA
Alumno:
Coloma Josu
Paralelo # 5
Fecha de Presentacin:
1 de Julio 2015
I Termino 2015
-
DIAGRAMA DE FLUJO DEL POGRAMA PRINCIPAL
Inicio
Imprimir men
Tecla=1 Tecla=2 Tecla=3No No
Imprime Nombre
Tecla= M o m
Si
No
Si
Limpiar pantalla
No
Ingresar Vocal
Comparar Vocal
Parpadear Vocal
Desplazar Vocal
Otra Vocal?
Si
Fin
-
CODIGO DEL PROGRAMA PRINCIPAL Y LAS MACROS
UTILIZADAS
;*********************************************************************************** ; Programa: P1.ASM ; Descripcin: ; *********************************************************************************** TITLE Movimiento del Cursor en Pantalla de Texto ;---------------------------------------------------------------------------------------- ; Definicion de macro copiar cadena COPIARCADENA MACRO CADENAS,CADENAD MOV DI,OFFSET CADENAD MOV SI, OFFSET CADENAS MOV CX,50 REP MOVSB NOP ENDM ;---------------------------------------------------------------------------------------- ; Definicion de macro Imprimir letra IMPRIMIRCADENA MACRO CADENA,FILA,COLUMNA CURSOR FILA,COLUMNA MOV AH, 09H; imprime cadena de caracteres LEA DX, CADENA; direccin inicial de la cadena INT 21H ENDM ;------------------------------------------------------------------------------------------ .MODEL SMALL .STACK 32H .DATA FILA DB 12 ; coordenadas COL DB 40 ; del centro de la pantalla CONT DB 6 MSJ2 DB 'MENU PRINCIPAL $' MSJ3 DB '1.NOMBRE DEL ESTUDIANTE $' MSJ4 DB '2.PROYECTO $' MSJ5 DB '3.SALIR $' MSJ6 DB 'JOSUE ANDRE COLOMA CHUCHUCA $'
-
MSJ7 DB 'Presione m o M para regresar al menu principal $' MSJ8 DB 'INGRESE UNA VOCAL $' A DB '*****',0AH,8,8,8,8,8,'* *',0AH,8,8,8,8,8,'*****',0AH,8,8,8,8,8,'* *',0AH,8,8,8,8,8,'* *$' B DB '**** ',0AH,8,8,8,8,8,'* *',0AH,8,8,8,8,8,'**** ',0AH,8,8,8,8,8,'* *',0AH,8,8,8,8,8,'**** $' LETRA DB 0 .CODE INCLUDE LABMICP.inc; LABMICP.INC contiene los macros y las subrutinas ; que demanda el PP (Programa Principal) PP PROC FAR MOV AX, @DATA MOV DS, AX CALL MTXT25X80; modo texto 25x80 INICIO: LPANT 0000H,184FH; limpia pantalla fija atributo LVENT 050CH,0E3FH CALL IMPRIMIRMENU LAZO1: MOV AH, 7 ; funcin 7 de MSDOS INT 21H ; espera hasta que usuario aprete una tecla CMP AL,'1' ; luego compara .... JNE SALTOPR CALL OPCION1 ESPERA :MOV AH, 7 ; funcin 7 de MSDOS INT 21H ; espera hasta que usuario aprete una tecla CMP AL,'m' ; luego compara .... JE INICIO CMP AL,'M' JE INICIO JMP ESPERA SALTOPR: CMP AL,'2' JNE SALTO2 LPANT 0000H,184FH IMPRIMIRCADENA MSJ8,8,25 MOV AH, 7 ; funcin 7 de MSDOS INT 21H ; espera hasta que usuario aprete una tecla SALTOA: CMP AL,'A' ; luego compara .... JNE SALTOB COPIARCADENA A,LETRA JMP PARPADEO SALTOB: CMP AL,'B' ; luego compara .... JNE INICIO COPIARCADENA B,LETRA
-
JMP PARPADEO PARPADEO: LPANT 0000H,184FH CALL DELAY1 LPANT 0000H,184FH IMPRIMIRCADENA LETRA,8,30 MOV CX,30000 CALL DELAY DEC CONT CMP CONT,0 JNE PARPADEO MOV COL,30 DESPLAZAR: LPANT 0000H,184FH IMPRIMIRCADENA LETRA,8,COL MOV CX,30000 CALL DELAY CALL OESTE JMP DESPLAZAR SALTO2: CMP AL,'O' JNE SALTO3 CALL OESTE CALL PCURSOR JMP LAZO1 SALTO3: CMP AL,'E' JNE SALTO4 CALL ESTE CALL PCURSOR JMP LAZO1 SALTO4: CMP AL, '3'; para salir verifica por tecla ESC. JNE LAZO1 CALL SALIR RET PP ENDP; Fin de PP (Programa Principal) ;********************************************************************* ; LISTADO DE PROCEDIMIENTOS (SUBRUTINAS) ;********************************************************************* IMPRIMIRMENU PROC NEAR IMPRIMIRCADENA MSJ2,6,31 IMPRIMIRCADENA MSJ3,9,20 IMPRIMIRCADENA MSJ4, 10,20 IMPRIMIRCADENA MSJ5,11,20 RET IMPRIMIRMENU ENDP ;*********************************************************************
-
MTXT25X80 PROC NEAR; Modo Texto 25x80 MOV AH, 0; funcin 0 de BIOS MOV AL, 3; el cdigo 3 define modo texto 25 filas 80 columnas INT 10H RET MTXT25X80 ENDP ;********************************************************************* PCURSOR PROC NEAR MOV AH, 2; funcin 2 de BIOS posiciona cursor MOV DH, FILA MOV DL, COL MOV BH, 0 INT 10H RET PCURSOR ENDP ;**************************************************************** OPCION1 PROC NEAR LPANT 0000H,184FH; limpia pantalla fija atributo LVENT 050CH,0E3FH CURSOR 8,24 MOV AH, 09H; imprime cadena de caracteres LEA DX, MSJ6; direccin inicial de la cadena INT 21H NOP CURSOR 24,16 MOV AH, 09H; imprime cadena de caracteres LEA DX, MSJ7; direccin inicial de la cadena INT 21H OPCION1 ENDP ;********************************************************************* SUR PROC NEAR INC FILA CMP [FILA],25 JNZ SALIRS MOV [FILA],0 SALIRS: RET SUR ENDP ;********************************************************************* ESTE PROC NEAR INC COL NOP NOP NOP
-
RET ESTE ENDP ;********************************************************************* OESTE PROC NEAR DEC COL CMP [COL],0 JNZ SALIRO MOV [COL],74 SALIRO: RET OESTE ENDP ;*********************************************************************** END PP ;***********************************************************************
CAPTURAS DE PANTALLAS DEL MENU PRINCIPAL