Datos introducidos desde el teclado
Hola a tod@s.
Agradecería mucho a la gente que me puede ayudar en este asunto que llevo ya varias semanas con ello.
Estoy realizando una práctica y pienso que desconozco algo fundamental. Tengo que realizar una operacion con un número de 16 bits introducido desde el teclado.
Por lo que he visto utilizando:
mov ah, 0Ah
Hace que introduzca datos desde el teclado, pero ¿Cómo puedo asignar ese dato que he introducido a una variable "n"?.
dosseg
.model small
.stack 100h
.data
Texto DB "Introduce un numero de 16 bits: ",13,10,'$' ; Varaible TEXTO es igual a esa frase
leo DB 7 ;6 caracteres para el numero de max y uno para el enter
Otralinea DB 13,10,'$'
compa2 DB ?
ORG 200H
n DW ?
.code
Inicio:
mov ax, @data
mov ds, ax
sub ax, ax ;AX queda a cero
mov ah, 9 ;Peticion de pintar en pantalla
lea dx, Texto ;Carga la direccion de Texto en DX
int 21h ;Ejecuta la funcion
mov ah, 0Ah ;Peticion de introducir carateres desde teclado
lea dx, leo
mov n, ah
mov ah, 9 ;Peticion de pintar en pantalla
lea dx, Otralinea ;Carga la direccion de Otralinea en DX
int 21h
mov ah, 4Ch
int 21h
END Inicio
Como tengo "leo" que me dice el tipo de datos que voy a introducir, no se como decir que tiene que tener como máximo 5 caracteres (mas el de enter) y sea de 16 bits.
Muchas gracias por todo, y de verdad estoy algo desesperado por conocer la solucion
Agradecería mucho a la gente que me puede ayudar en este asunto que llevo ya varias semanas con ello.
Estoy realizando una práctica y pienso que desconozco algo fundamental. Tengo que realizar una operacion con un número de 16 bits introducido desde el teclado.
Por lo que he visto utilizando:
mov ah, 0Ah
Hace que introduzca datos desde el teclado, pero ¿Cómo puedo asignar ese dato que he introducido a una variable "n"?.
dosseg
.model small
.stack 100h
.data
Texto DB "Introduce un numero de 16 bits: ",13,10,'$' ; Varaible TEXTO es igual a esa frase
leo DB 7 ;6 caracteres para el numero de max y uno para el enter
Otralinea DB 13,10,'$'
compa2 DB ?
ORG 200H
n DW ?
.code
Inicio:
mov ax, @data
mov ds, ax
sub ax, ax ;AX queda a cero
mov ah, 9 ;Peticion de pintar en pantalla
lea dx, Texto ;Carga la direccion de Texto en DX
int 21h ;Ejecuta la funcion
mov ah, 0Ah ;Peticion de introducir carateres desde teclado
lea dx, leo
mov n, ah
mov ah, 9 ;Peticion de pintar en pantalla
lea dx, Otralinea ;Carga la direccion de Otralinea en DX
int 21h
mov ah, 4Ch
int 21h
END Inicio
Como tengo "leo" que me dice el tipo de datos que voy a introducir, no se como decir que tiene que tener como máximo 5 caracteres (mas el de enter) y sea de 16 bits.
Muchas gracias por todo, y de verdad estoy algo desesperado por conocer la solucion