Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- .intel_syntax noprefix
- .text
- .global main
- main:
- mov eax, [esp+8]
- mov eax , [eax+4]
- finit
- push eax
- call atof
- add esp,4
- fabs
- fldpi
- fldpi
- faddp
- pi2:
- fcom
- fstsw ax
- sahf
- ja endPi
- fsub ST(1),ST(0)
- jmp pi2
- endPi:
- fldz
- fcompp
- fst qword ptr x
- fst qword ptr y
- fstp qword ptr a
- loop:
- fld1
- fld qword ptr n
- faddp
- fld1
- fld1
- faddp
- fld qword ptr n
- faddp
- fmulp
- fld qword ptr a
- fld qword ptr x
- fld qword ptr x
- fmulp
- fmulp
- fdivrp
- fchs
- fst qword ptr a
- fld qword ptr y
- faddp
- fstp qword ptr y
- fld1
- fld1
- faddp
- fld qword ptr n
- faddp
- fstp qword ptr n
- fld qword ptr a
- fabs
- fld qword ptr eps
- fcompp
- fstsw
- sahf
- jb loop
- end:
- fld qword ptr y
- sub esp,8
- fstp qword ptr[esp]
- push offset msg
- call printf
- add esp,12
- xor eax,eax
- ret
- .data
- x: .double 1.0
- y: .double 1.0
- n: .double 1.0
- a: .double 1.0
- eps: .double 0.000001
- msg: .asciz "%f\n"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement