• Domingo 28 de Abril de 2024, 20:28

Autor Tema:  Duda Sobre Registros  (Leído 1369 veces)

tirengarfio

  • Miembro activo
  • **
  • Mensajes: 29
    • Ver Perfil
Duda Sobre Registros
« en: Miércoles 12 de Marzo de 2008, 21:39 »
0
Saludos,

ejecutando paso a paso el codigo de aqui debajo, tras ejecutar la linea "int 21h(*)", el valor de al pasa a ser 24.

¿Alguien me sabe de decir por qué ocurre eso?


Código: Text
  1.  
  2. DOSSEG
  3.   .MODEL SMALL
  4.   .STACK 100h
  5.   .DATA
  6.  
  7. cadena   DB "Has pulsado la tecla:$"
  8.  
  9.  
  10.   .CODE
  11.  
  12.  
  13. INICIO:
  14.  
  15.   mov ax, @data
  16.   mov ds, ax
  17.  
  18.  
  19.  
  20.   mov ah, 08h
  21.   int 21h
  22.  
  23.  
  24.  
  25.   lea dx, cadena
  26.   mov ah, 09h
  27.   int 21h (*)
  28.  
  29.  
  30.   mov dl, al
  31.   mov ah, 02h
  32.   int 21h
  33.  
  34.  
  35.  
  36.  
  37. FIN:
  38.  
  39.   mov ah, 4ch
  40.   int 21h
  41.   end INICIO
  42.  



Un saludo

Javi

Eternal Idol

  • Moderador
  • ******
  • Mensajes: 4696
  • Nacionalidad: ar
    • Ver Perfil
Re: Duda Sobre Registros
« Respuesta #1 en: Jueves 13 de Marzo de 2008, 01:28 »
0
http://www.ctyme.com/intr/rb-2554.htm

Return:
AL = last character output (despite the official docs which state
nothing is returned) (at least DOS 2.1-7.0)


Y lo es, fijate cual es el valor ASCII de $.

Nacional y Popular En mi país la bandera de Eva es inmortal.


Queremos una Argentina socialmente justa, económicamente libre y  políticamente soberana.
¡Perón cumple, Evita dignifica!


La mano invisible del mercado me robo la billetera.