Ensamblador - Ayuda con contar la cantidad de caracteres que se pasa por teclado

   
Vista:

Ayuda con contar la cantidad de caracteres que se pasa por teclado

Publicado por Alejandro (1 intervención) el 04/12/2013 22:07:26
Hola a todos, soy novato prácticamente y desearía ayuda con contar la cantidad de caracteres que uno pasa por teclado, la idea seria que cuando uno presione la tecla 0 pare de escribir y ya te muestre esa cantidad, el compilador que utilizo para esto es el qemu, y como sistema operativo Linux, este es un código que me permite la entrada de caracteres, pero no sé en que parte del código iría como las instrucciones para contar y mostrar, aquí se los muestro para ver si me pueden dar una sugerencia

format binary as 'img'
org 7C00h
mov ax,0
mov es,ax
mov ax,Keyboard
mov [es:9*4],ax
mov [es:9*4+2],cs

mov ax,0b800h
mov gs,ax
xor di,di

sti

jmp $

(tengo entendido que en esta parte es donde debería poner los códigos para contar y parar, tengo ideas pero cuando las llevo a cabo nada)

Keyboard: in al,60h
cmp al,127
ja @f
mov si,keymap
xor ah,ah
add si,ax
mov al,[si]
mov [gs:di],al
add di,2

@@:
mov al,20h
out 20h,al
iret

keymap: db 0
db 27,'1234567890-=',8
db 9,'qwertyuiop[]',10
db 0,'asdfghjkl;',39,96,0,'\'
db 'zxcvbnm,./',0,'*',0,' '
db 0,'2345678901',0,'3789-456+1230.'

times 510-($-$$) db 0
dw 0xaa55
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder