Intel汇编-内联汇编使用宏函数
创始人
2024-03-30 09:10:40

/*
 * An example of using inline assembly macros in a program
 *
 * 宏函数
 */
#include

#define GREATER(a, b, result)    ({\
    asm("cmp %1, %2\n\t" \
        "jge 0f\n\t" \
        "movl %1, %0\n\t" \
        "jmp 1f\n\t" \
        "0:\n" \
        "movl %2, %0\n\t" \
        "1:\n"
        :"=r"(result) \
        :"r"(a), "r"(b)); })
        

int main()
{
    int data1 = 10;
    int data2 = 20;
    int result;

    GREATER(data1, data2, result);
    printf("a = %d, b = %d result = %d\n", data1, data2, result);

    data1 = 30;
    GREATER(data1, data2, result);
    printf("a = %d, b = %d result = %d\n", data1, data2, result);
    
    return 0;
}

相关内容

热门资讯

俄外交部驳斥日方就普京登岛提出... 来源:新华社新华社莫斯科8月13日电俄罗斯外交部发言人扎哈罗娃13日在俄外交部网站发布声明,驳斥日本...
大手笔!中国移动,拟分红544... 来源:证券时报网中国移动中期拟分红544.26亿元(含税)。8月13日晚间,中国移动(600941)...
典型案例揭示个人信息泄露套路 转自:贵州日报 非法破解网购订单信息、通过旅馆共享充电宝套取个人信息、行业“内鬼”倒卖客户资料...
以“词元”为桥,构筑AI算力贵... 转自:贵州日报 贵阳日报融媒体记者 钱丽 2026中国国际大数据产业博览会进入开幕倒计时...
“花漾高峰”果香浓 转自:贵州日报 贵阳日报融媒体记者 潘朝选 入夏以来,贵阳贵安凭借清凉气候吸引八方来客避...