PROCESADORES DIGITALES
Enviado por arnoldkvp • 10 de Junio de 2019 • Trabajo • 8.591 Palabras (35 Páginas) • 98 Visitas
UNIVERSIDAD NACIONAL DE TRUJILLO[pic 1][pic 2][pic 3][pic 4]
FACULTAD DE INGENIERÍA
ESCUELA DE INGENIERÍA DE SISTEMAS
[pic 5]
CURSO
PROCESADORES DIGITALES
DOCENTE
Ing. ARELLANO SALAZAR, CESAR
TRABAJO
PROYECTO – UNIDAD I
INTEGRANTES
AGUILAR RODRIGUEZ, WILMER
GUERRA AVALOS, ALEXANDRA
LLAVE VERGARAY, JOSE
VACA PASTOR, ARNOLD
VARGAS ZAVALETA, ERICK
MAYO 2019
PERÚ
- COORDENADAS PARA LA PRIMERA CIRCUNFERENCIA (LA QUE SE MUEVE)
DATA SEGMENT
PosX1 DW 215 // Coordenada de x1
PosY1 DW 160 // Coordenada de y1
AUX1 DW ? // Variable auxiliar1
ULT_TECLA DB "x" // Se inicia en 'x', porque no tendrá ningún movimiento
TAM_RADIO1 DW 50 // Tamaño del Radio del círculo
COLOR1 DB 18 // Color inicial VERDE
Fila1 DW ?
Columna1 DW ?
- COORDENADAS PARA LA SEGUNDA CIRCUNFERENCIA (LA QUE SE QUEDA QUIETA)
PosX2 DW 425
PosY2 DW 320
AUX2 DW ? // Variable auxiliar2
TAM_RADIO2 DW 50 // Radio del círculo
COLOR2 DB 19 // Color inicial TURQUEZA
Fila2 DW ?
Columna2 DW ?
VID DB ?
DATA ENDS
- CODIGO
CODE SEGMENT
ASSUME CS:CODE,DS:DATA,SS:PILA
INICIO:
MOV AX,DATA
MOV DS,AX
MOV AH,0Fh
INT 10h // Llamada al BIOS
MOV VID,AL
MOV AH,00h
MOV AL,12h // Modo gráfico resolución 640x480
INT 10h
- PRIMERA CIRCUNFERENCIA
MOV CX,PosX1
MOV DX,PosY1
CALL Dibuja_Punto1 // Primero, que dibuje el centro.
- SEGUNDA CIRCUNFERENCIA
MOV CX,PosX2
MOV DX,PosY2
CALL Dibuja_Punto2 // Primero, que dibuje el centro.
- FUNCION
CALL PRINCIPAL
- FINAL
MOV AH,00h // Función para re-establecer modo de texto
MOV AL,VID
INT 10h // Llamada al BIOS
MOV AH,004Ch
INT 21h
- PROCEDIMIENTOS
- PROCEDIMIENTO PRINCIPAL DEL PROGRAMA
PRINCIPAL PROC NEAR
Partida:
CALL Dibuja_Circunferencia1 //Dibuja todo el círculo
CALL Dibuja_Punto2
CALL Dibuja_Circunferencia2
CALL Tecla_Presionada // Verifica si hay un valor en el buffer
// Si no está vacío atiende el que está
JNZ Arriba //Si está vacío 'entra' el último ingresado
MOV AL,ULT_TECLA
Arriba:
CMP AL, "w" //'Comparar': Si AL es igual a w, ignorar la instrucción siguiente
JNZ Abajo //Caso contrario, saltar a opcion Izquierda
CALL MOV_Arriba
JMP Partida
Abajo:
CMP AL, "s"
JNZ Izquierda
CALL MOV_Abajo
JMP Partida
Izquierda:
CMP AL, "a"
...