Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- INCLUDE Irvine32.inc
- .data
- mes1 byte "Introduceti valoarea X:",0
- mes2 byte "Introduceti valoarea Y:",0
- mes3 byte "Rezutatul este:",0
- vrx dword 0
- vry dword 0
- rez dd 0
- .code
- main PROC
- mov edx,OFFSET mes1
- call WriteString ; afisarea mes1
- call ReadInt ; introducerea de la tastatura
- mov vrx,eax ; salvarea valorii in variabila vrx
- mov edx,OFFSET mes2
- call WriteString ; afisarea mes2
- call ReadInt ; introducerea de la tastatura
- mov vry,eax ; salvarea valorii in variabila vry
- ;controlam conditiile
- xor eax,eax
- mov edx,0
- mov eax,vry
- mov bx,2
- imul bx ; calcul Y*2
- cmp vrx,eax ;compararea X cu 2Y
- jb con1 ; salt la con1, daca X<2Y
- mov eax,vry ;realizam expresia 2Y-60
- mov bx,2
- imul bx
- sub eax,60
- mov rez,eax
- jmp ex ; salt neconditionat la ex
- con1: mov eax,vrx ; realizam expresia X/8+32-Y
- mov bx,8h
- idiv bx
- add eax,32
- sub eax,vry
- mov rez,eax
- ex: mov edx,OFFSET mes3
- call WriteString ; afisarea mesajului mes3
- call WriteInt ; afisarea rezultatului cu semn
- call Crlf ; din rand nou
- exit
- main ENDP
- END main
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement