Advertisement
Guest User

Untitled

a guest
Mar 24th, 2018
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.04 KB | None | 0 0
  1. INCLUDE Irvine32.inc
  2. .data
  3. mes1 byte "Introduceti valoarea X:",0
  4. mes2 byte "Introduceti valoarea Y:",0
  5. mes3 byte "Rezutatul este:",0
  6. vrx dword 0
  7. vry dword 0
  8. rez dd 0
  9.  
  10. .code
  11. main PROC
  12. mov edx,OFFSET mes1
  13. call WriteString ; afisarea mes1
  14. call ReadInt ; introducerea de la tastatura
  15. mov vrx,eax ; salvarea valorii in variabila vrx
  16.  
  17. mov edx,OFFSET mes2
  18. call WriteString ; afisarea mes2
  19. call ReadInt ; introducerea de la tastatura
  20. mov vry,eax ; salvarea valorii in variabila vry
  21.  
  22. ;controlam conditiile
  23. xor eax,eax
  24. mov edx,0
  25.  
  26. mov eax,vry
  27. mov bx,2
  28. imul bx ; calcul Y*2
  29. cmp vrx,eax ;compararea X cu 2Y
  30. jb con1 ; salt la con1, daca X<2Y
  31.  
  32. mov eax,vry ;realizam expresia 2Y-60
  33. mov bx,2
  34. imul bx
  35. sub eax,60
  36. mov rez,eax
  37. jmp ex ; salt neconditionat la ex
  38.  
  39. con1: mov eax,vrx ; realizam expresia X/8+32-Y
  40. mov bx,8h
  41. idiv bx
  42. add eax,32
  43. sub eax,vry
  44. mov rez,eax
  45.  
  46. ex: mov edx,OFFSET mes3
  47. call WriteString ; afisarea mesajului mes3
  48. call WriteInt ; afisarea rezultatului cu semn
  49. call Crlf ; din rand nou
  50.  
  51. exit
  52. main ENDP
  53. END main
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement