0
linux(ubuntu 9.04)で浮動小数点数を出力するアセンブリコードを教えてください。アセンブリの浮動小数点linux
linux(ubuntu 9.04)で浮動小数点数を出力するアセンブリコードを教えてください。アセンブリの浮動小数点linux
方法の多くは、この質問は(アーキテクチャ、システムコールやlibcの、ガスやNASM、出力形式など)を使用すると、より具体的なことなく答えたが、ここでは一つの方法(x86の、libcの、NASM)
であることができますありますbits 32
section .text
extern printf
global main
main:
fldpi ; load pi onto FPU stack
sub esp, 8 ; make space on CPU stack
fstp qword [esp] ; pop from FPU stack and store on CPU stack (parameter 2 of printf)
push format ; stack the format string (parameter 1 of printf)
call printf
add esp,12 ; restore stack (4 btyes address + 8 bytes float)
xor eax,eax ; set eax (return value) to 0
ret ; return to libc
section .data
format: db "%.20g",10,0
出力: 3.141592653589793116
答えが入力されたばかりのときに、あなたがポップアップしたときに;-) – hirschhornsalz
どのようなアーキテクチャですか? – cmcginty