Advertisement
Guest User

Untitled

a guest
Oct 14th, 2019
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.40 KB | None | 0 0
  1. .GLOBAL _main
  2. .DATA
  3. msg1: .ASCII "Inserisci la stringa\r"
  4. strings: .ASCII "zero ", "uno ", "due ", "tre ", "quattro ", "cinque ", "sei ", "sette ", "otto ", "nove "
  5. input: .FILL 21,1,0x0D
  6. spazio: .BYTE ' '
  7.  
  8. .TEXT
  9. _main: NOP
  10. XOR %ESI, %ESI
  11. LEA msg1, %EBX
  12. CALL outline
  13. leggi: CALL inchar
  14. CALL outchar
  15. MOV %AL, input(%ESI)
  16. CMPB $0x0D, %AL
  17. JE processa
  18. INC %ESI
  19. CMP $20, %ESI
  20. JB leggi
  21. processa: CALL newline
  22. XOR %EDX, %EDX
  23. LEA input, %ESI
  24. ciclo: MOVB (%ESI), %AL
  25. CMPB $0x30, %AL
  26. JB carattere
  27. CMPB $0x39, %AL
  28. JA carattere
  29. # Stampo 1->uno etc..
  30. INC %EDX
  31. SUB $0x30, %AL
  32. LEA strings, %EBX # strings[AL*8]
  33. AND $0x000000FF, %EAX
  34. LEA (,%EAX, 8), %EDI
  35. ADD %EDI, %EBX
  36. MOV $8, %CX
  37. CALL outmess
  38. JMP dopo
  39. carattere: CMPB $0x0D, %AL
  40. JE fine
  41. CALL outchar
  42. PUSH %EAX
  43. MOVB spazio, %AL
  44. CALL outchar
  45. POP %EAX
  46. dopo: INC %ESI
  47. JMP ciclo
  48. fine: CALL newline
  49. CMP $0, %EDX
  50. JNE _main
  51. RET
  52. .INCLUDE "c:/amb_gas/utility"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement