VC内联汇编和GCC内联汇编的语法区别

VC:

    #include <stdio.h>
    
    main(){
        int a = 1;
        int b = 2;
        int c;
        __asm{
            mov eax,a
            mov ebx,b
            mov ecx,1h
            add eax,ebx
            mov c,ecx
        }
        printf("%x\n", c);
    }

GCC:

    #include <stdio.h>
    
    main(){
        int a = 1;
        int b = 2;
        int c;
        asm(
            "add %2,%0"        //1
            :"=g"(c)           //2
            :"0"(a),"g"(b)     //3
            :"memory"          //4
        );
            printf("%x\n", c);
    }

猜你喜欢

转载自www.cnblogs.com/Chorder/p/9114476.html