Guest User

Untitled

a guest
Jan 21st, 2018
284
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.40 KB | None | 0 0
  1. .data
  2. .align 4
  3. x: .long 0x00124011,0x3130FFFF
  4. y: .long 0x07001245,0x12f01348
  5. ans: .long 0,0,0,0
  6. .text
  7. .globl main
  8.  
  9. main:
  10.  
  11. #; initialize
  12. mov $0,%ecx
  13. mov $0,%ebp
  14.  
  15. #; 1. multiply mp L.O * mc L.O.
  16. #; eax: mp; multiplier L.O.
  17. #; edi: mc; multiplicand L.O.
  18. #; ecx: this.answer H.O.
  19. #; ans[0]: this.answer L.O.
  20. mov $0,%esi
  21. mov x(,%esi,4),%eax
  22. mov y(,%esi,4),%edi
  23.  
  24. mul %edi
  25. mov %eax,ans(,%esi,4)
  26. mov %edx,%ecx
  27.  
  28. #; 2. multiply mp H.O. * mc L.O
  29. #; eax: mp; multiplier H.O.
  30. #; edi: mc; multiplicand L.O.
  31. #; ecx: (1).answer + this.answer L.O.
  32. #; ebp: this.answer H.O.
  33. mov $1,%esi
  34. mov x(,%esi,4),%eax
  35. mov $0,%esi
  36. mov y(,%esi,4),%edi
  37.  
  38. mul %edi
  39. add %eax,%ecx
  40. adc $0,%ebp
  41. mov %edx,%ebp
  42.  
  43. #; 3. multiply mp L.O. * mc H.O.
  44. #; eax: mp; multiplier L.O.
  45. #; edi: mc; multiplicand H.O.
  46. #; ecx: (1).answer + (2.answer) + this.answer L.O.
  47. #; ebp: (2).answer + this.answer H.O.
  48. mov $0,%esi
  49. mov x(,%esi,4),%eax
  50. mov $1,%esi
  51. mov y(,%esi,4),%edi
  52.  
  53. mul %edi
  54. add %eax,%ecx
  55. adc $0,%ebp
  56. add %edx,%ebp
  57.  
  58. #; 4. multiply mp H.O. * mc H.O.
  59. #; eax: mp; multiplier H.O.
  60. #; edi: mc; multiplicand H.O.
  61. #; edx: this.answer. H.O
  62. #; ebp: (2).answer + (3).answer + this.answer L.O.
  63. mov $1,%esi
  64. mov x(,%esi,4),%eax
  65. mov y(,%esi,4),%edi
  66.  
  67. mul %edi
  68. add %eax,%ebp
  69. adc $0,%edx
  70. mov %edx,ans(,%esi,4)
  71.  
  72. #; answer
  73. mov $0,%esi
  74. mov ans(,%esi,4),%eax
  75.  
  76. mov %ecx,%ebx
  77.  
  78. mov %ebp,%ecx
  79.  
  80. mov $1,%esi
  81. mov ans(,%esi,4),%edx
  82.  
  83. call stop
Add Comment
Please, Sign In to add comment