Foro de elhacker.net

Programación => ASM => Mensaje iniciado por: danielo- en 1 Noviembre 2010, 16:28 pm



Título: Como pasar un registro a una cadena de texto?
Publicado por: danielo- en 1 Noviembre 2010, 16:28 pm
Hola, de nuevo aqui preguntando  :-\ y es acerca de imprimir un valor almacenado en un registro, como ya se habran dado cuenta estoy piojo en asm, y pues resulta que quiero imprimir el valor de un registro, pero no encuentro como :(, es decir, yo tengo el numero 300 almacenado en ax, y quisiera que al imprimirlo me aparezca 300, como ustedes sabrán, cuando lo mando a imprimir (mando imprimir ah y luego al) y me aparece su correspondiente ascii (una carita y una coma) como hago la conversion para que me imprima el 300?


Título: Re: Como pasar un registro a una cadena de texto?
Publicado por: Yurix en 30 Noviembre 2010, 20:02 pm

Vamos por pasos , un registro contiene un grupo de ceros y unos , debes de primero convertir eso a decimal , hexadecimal etc ... Te voy a ayudar , puedes descargar un codigo hecho por mi que muestra todos los registros , creo que hasta los flags
, espero que te sea util.

http://sites.google.com/site/compactamos/descargas/RegistrosCPU.rar?attredirects=0&d=1


Título: Re: Como pasar un registro a una cadena de texto?
Publicado por: danielo- en 1 Diciembre 2010, 01:59 am
Orale, despues de todo lo consegui, solo era un algoritmo que tuve que implementar, me quedo así:

Código
  1.  
  2. data segment
  3. imp1 db "numeros",13,10,"$"
  4. num dw ? ; nnumero de filas a introducir
  5. data ends
  6.  
  7. code segment
  8. assume cs: code,ds: data
  9.  
  10. inicio:
  11. mov ax,12345
  12. mov cx,5
  13. mov dx,0
  14. imprime:
  15. ;tiene q estar en ax loq vamos a imprimir
  16. ; en cx 5
  17. ;y dx en 0
  18. mov bx,10  ;divisor
  19. div bx
  20. add dl,30h
  21. mov dh,0
  22. push dx
  23. mov dx,0
  24.  
  25. loop imprime
  26. mov cx,5
  27. imp:
  28. mov ah,02h
  29. pop dx
  30. int 21h
  31. loop imp
  32.  
  33. fin:
  34. mov ax,4c00h
  35. int 21h
  36.  
  37. code  ends
  38. end inicio
  39.  
  40.