以下内联汇编代码在我的系统上不起作用。该代码有什么问题?
如果我使用asm
而不是__asm__
那么它可以正常工作。
#include <stdio.h>
int main() {
float arg1, arg2, div ;
printf( "Enter two numbers : " );
scanf( "%f%f", &arg1, &arg2 );
/* Perform floating Division */
__asm__ ( "fld %2;"
"fld %1;"
"fdiv;"
"fstp %0;" : "=g" (div) : "g" (arg1), "g" (arg2) ) ;
printf( "%f / %f = %f\n", arg1, arg2, div );
return 0 ;
}