Viernes 15 de Noviembre de 2024, 13:03
SoloCodigo
Bienvenido(a),
Visitante
. Por favor,
ingresa
o
regístrate
.
¿Perdiste tu
email de activación?
Inicio
Foros
Chat
Ayuda
Buscar
Ingresar
Registrarse
SoloCodigo
»
Foros
»
Programación General
»
ASM (Ensamblador)
(Moderador:
Eternal Idol
) »
Lecturas De Teclado
« anterior
próximo »
Imprimir
Páginas: [
1
]
Autor
Tema: Lecturas De Teclado (Leído 2824 veces)
maikmr
Miembro MUY activo
Mensajes: 112
Lecturas De Teclado
«
en:
Sábado 30 de Octubre de 2004, 04:43 »
0
Hola compañeros del foro! disculpe me puede alguin pasar algun codigo que realize lecturas
de teclado y luego imprima lo que se digito. Esto lo necesito para Turbo ensamblador(TASM), o por lo menos medigan como hacerlo. Les agradeseria demaciado la ayuda.
Tweet
ivanjah
Nuevo Miembro
Mensajes: 4
Re: Lecturas De Teclado
«
Respuesta #1 en:
Viernes 12 de Noviembre de 2004, 23:20 »
0
Hola, este codigo lo encontre en este mismo foro, lee un caracter del teclado y lo muestra en la pantalla
model small
.stack 100h
.code
start:
;Aqui lees el caracter y se guarda en al
mov ah,01
int 21h
;movemos el caracter al registro dl para despues visualizarlo
mov dl,al
;visualizamos lo que hay en dl mediante la funcion 02 de la int 21h
mov ah,02
int 21
;leemos otro caracter para alcanzar a ver lo que hicimos
mov ah,01
int 21h
;salida del programa
mov ax,4c00h
int 21h
end start
Espero te sirva
cHoLeY
Nuevo Miembro
Mensajes: 1
Re: Lecturas De Teclado
«
Respuesta #2 en:
Sábado 13 de Noviembre de 2004, 20:40 »
0
Hola,
necesito leer un string completo y no solo una tecla, tengo el siguiente codigo para leer el string
Código: Text
mov Ah, 0Ah ; se captura una cadena
mov Dx, Offset cad; direccion de la variable cadena
Int 21h
donde "cad" es
Código: Text
cad DB 15,0,15 DUP(?)
mi problema es que nose como mostrar en pantalla esa cadena que leí por teclado. He intentado mostrarla como se muestra en pantalla un string "estático"
Código: Text
mov Dx, Offset cad
Mov Ah,9
Int 21h
Pero no me muestra lo que leí por teclado.
Ojalá alguien me responda. Gracias
deldar
Miembro activo
Mensajes: 93
Re: Lecturas De Teclado
«
Respuesta #3 en:
Lunes 15 de Noviembre de 2004, 10:30 »
0
Esta es una descripcion de la funcion que usas para mostrar la cadena por pantalla:
INT 21 - DOS 1+ - WRITE STRING TO STANDARD OUTPUT
AH = 09h
DS:DX -> '$'-terminated string
Return: AL = 24h (the '$' terminating the string, despite official docs which
state that nothing is returned) (at least DOS 3.3-5.0)
Notes: ^C/^Break are checked, and INT 23 is called if either pressed
standard output is always the screen under DOS 1.x, but may be
redirected under DOS 2+
under the FlashTek X-32 DOS extender, the pointer is in DS:EDX
SeeAlso: AH=02h,AH=06h"OUTPUT"
Tal y como indica la cadena debe terminar en "$" por lo que yo inicializaría la variable "cad" con el valor "$" y me aseguraria que la cadena es inferior al tope de "cad" -1 (o aumentaría en 1 cad) para asegurarme de que quede al menos un valor "$" en la cadena.
P.D: esta interrupción muestra la cadena hasta encontrar el primer símbolo "$" con lo que si hay más el resto no se mostrarán.
Saludos. Deldar
Quien de verdad sabe de qué habla, no encuentra razones para levantar la voz.
Super_G
Miembro MUY activo
Mensajes: 375
Re: Lecturas De Teclado
«
Respuesta #4 en:
Viernes 17 de Diciembre de 2004, 16:47 »
0
Código: Text
mov ah,10;;funcion de lectura del teclado en una cadena estructurada
mov dx,offset cadena
int 21h
;;******se termino de leer en la cadena*****
mov dx,offset cadena
mov cl,[dx+1]
add dx,2;;
mov si,dx
add si,cl ;;final de la cadena
mov [si],'$' delimitador d ecadena
mov ah,09h;;funcion mostrar cadnea
int 21h
int 20h
cadena db 10,10,'----------';; cadena estructurada
final db '$';delimitador de cadena
Imprimir
Páginas: [
1
]
« anterior
próximo »
SoloCodigo
»
Foros
»
Programación General
»
ASM (Ensamblador)
(Moderador:
Eternal Idol
) »
Lecturas De Teclado