Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ; ♥ ♥ ♥ ♥ ♥ ♥ ♥ ♥ ♥ ♥ ♥ ♥ ♥ ♥ ♥ ♥ ♥ ♥ ♥ ♥
- ; ♥
- ; ♥
- ; ♥ @author ovictoraurelio
- ; ♥ @github http://github.com/ovictoraurelio
- ; ♥ @website http://victoraurelio.com
- ; ♥
- ; ♥ ♥ ♥ ♥ ♥ ♥ ♥ ♥ ♥ ♥ ♥ ♥ ♥ ♥ ♥ ♥ ♥ ♥ ♥ ♥
- SECTION .data
- raio: dq 4.0
- altura: dq 3.0
- teste: db "Calculado: %f", 10, 0,
- SECTION .bss
- vol: resq 1
- SECTION .text
- global main
- extern printf
- main:
- finit
- fldpi ; empilha PI
- fld qword[raio] ; empilha o raio
- fmul st0,st0 ; calcula e empilha: raio^2
- fmulp st1,st0 ; calcula e empilha: PI * raio^2 e desempilha PI
- fld qword[altura] ; empilha altura
- fmulp st1,st0 ; calcula e empilha: altura * PI * raio^2 e desempilha antigo ST0
- mov eax, 3 ; armazena o inteiro 3 em eax
- push eax ; push na memória pq fld só funciona com memória
- fild dword[esp] ; empilha o inteiro 3
- fdivp st1, st0 ; calcula e empilha: altura * PI * raio^2 / 3
- fstp qword[vol] ; armazena na memoria
- push dword[vol + 4]
- push dword[vol]
- push dword teste
- call printf
- pop eax
- pop eax
- pop eax
- popa
- mov eax, 1
- mov ebx, 0
- int 80h
Advertisement
Add Comment
Please, Sign In to add comment