3

次のインライン アセンブル コードがシステムで機能しません。そのコードの問題は何ですか?

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 ;
}
4

0 に答える 0