gotoxy macro fila,col ;macro que pone el cursor en la posicion deseada
mov ah,02h ;funcion imprimir caracter
mov dh,fila ;ingresamos la coordenada de x
mov dl,col ;ingresamos la coordenada de y
mov bh,0h ;numero de pagina
int 10h ;interrupcion
endm ;fin del macro
pantalla macro que ;macro que imprime el primer caracter de la palabra escrita
mov ah,02h ;funcion imprimir caracter
mov dl,offset que ;ponemos el mensaje en dl
int 21h ;interrupcion
endm ;fin del macro
imprime macro eztryng ;macro que imprime los mensajes que le enviemos
mov dx,offset eztryng ;ponemos elmensaje en dx
mov ah,9 ;funcion imprimir variable
int 21h ;interrupcion
endm ;fin del macro
.data ;segmento de datos con variables
mensaje DB "INGRESE UN CARACTER: ",13,10,"$"
mensaje2 DB "INGRESE X del 0 al 9: ",13,10,"$"
mensaje3 DB "INGRESE Y del 0 al 9: ",13,10,"$"
mensaje4 DB "Que letra quieres",13,10,"$"
caracter DB ?
varx DB ?
vary DB ?
vaa db 0
vtext db 100 dup('$') ;Declaracion del vector
.code ;segmento de codigo
startup: ;funcion de inicio
mov ax,@data ;almacenamos lo que esta en el segento data
mov ds,ax ;movemos ax a ds
imprime mensaje ;llamamos al macro imprime y le enviamos la variable mensaje
mov si,00h ;limpiamos el registro si
mov caracter,0 ;limpiamos la variable caracter
leer: ;inicio de la funcion leer
mov ax,0000 ;limpiamos ax
mov ah,01h ;fincion de ingreso de caracter con impresion del mismo en pantalla
int 21h ;interrupcion
mov caracter[si],al ;ponemos el caracter tecleado en el arreglo caracter
inc si ;incrementamos si
cmp al,0dh ;comparamos al=salto de linea
ja leer ;de no ser igual repite la funcion leer para ingresar otro caracter
jb leer ;en caso de que al=salto de linea continua el programa
;mov cx,si
mov ah,02h ;funcion imprimir caracter
mov dl,10 ;imprimimos un salto de linea
int 21h ;interrupcion
imprime caracter ;llamamos al macro imprime y le enviamos la variable caracter
mov ah,02h ;funcion imprime caracter
mov dl,10 ;imprimimos un salto de linea
int 21h ;interrupcion
imprime mensaje2 ;llamamos al macro imprime y le enviamos la variable mensaje2
mov ax,0000 ;limpiamos ax
mov ah,01h ;fincion de ingreso de caracter con impresion del mismo en pantalla
int 21h ;interrupcion
sub al,30h ;le restamos 30h al caracter ingresado para transformarlo en un numero
mov bl,al ;ponemos el numero en bl
mov varx,al ;ponemos el numero en varx
imprime mensaje3 ;llamamos al macro imprime y le enviamos la variable mensaje3
mov ah,01h ;fincion de ingreso de caracter con impresion del mismo en pantalla
int 21h ;interrupcion
sub al,30h ;le restamos 30h al caracter ingresado para transformarlo en un numero
mov bl,al ;ponemos el numero en bl
mov vary,al ;ponemos el numero en vary
mov ax,0003h ;funcion que limpia la pantalla
int 10h ;interrupcion
imprime mensaje4
mov ah,01h ;fincion de ingreso de caracter con impresion del mismo en pantalla
int 21h ;interrupcion
sub al,30h ;le restamos 30h al caracter ingresado para transformarlo en un numero
gotoxy vary,varx ;llamamos al macro gotoxy y le enviamos las variables vary y varx
mov ah,00 ;limpiamos la parte alta de ax
mov si,ax ;ingresamos en si la posicion del caracter que deseamos imprimir
;kol:
pantalla caracter[si] ;llamamos al macro pantalla y le enviamos el caracter en la posicion deseada
;inc si
;loop kol
mov ah,01h ;funcion de captura con impresion en pantalla
int 21h ;interrupcion
mov ax,4c00h ;funcion de fin
int 21h ;interrupcion
end startup ;fin
Suscribirse a:
Enviar comentarios (Atom)
Trabajo con puerto usb
Programación de puerto USB USB viene de frase en Ingles “Universal Serial Bus” que se utiliza para describir un tipo de puerto en la co...
-
La unidad fundamental del almacenamiento de datos en SQL Server es la página. El espacio en disco asignado a un archivo de datos (.mdf o ....
-
8 Programa que mediante un botón con función permite centrar la ventana secundaria
-
Ejemplo 1 """" programa que crea una ventana usando la libreria Tkinter Fecha: 30 agosto 2017 Autor: Juan Rodolfo G...
No hay comentarios:
Publicar un comentario