打印
[ZLG-MCU]

急!请教如何在C源程序中加入汇编代码

[复制链接]
1665|1
手机看帖
扫描二维码
随时随地手机跟帖
沙发
zlgarm| | 2008-3-31 08:41 | 只看该作者

各种编译器嵌入汇编

IAR:
long longMul(long lX, long lY)
{
    __asm("    smull   r0, r1, r0, r1 "
          "    lsrs    r0, r0, #16 "
          "    orr     r0, r0, r1, lsl #16 "
          "    bx      lr");

    return(0);  /* 不会跑到这里,用于防止编译警告!*/
}


GCC:
static long __attribute__((naked)) longMul(long lX, long lY)
{
    __asm("    smull   r0, r1, r0, r1 "
          "    lsrs    r0, r0, #16 "
          "    orr     r0, r0, r1, lsl #16 "
          "    bx      lr");

    return(0); /* 不会跑到这里,用于防止编译警告!*/
}


Keil:
__asm long longMul(long lX, long lY)
{
    smull   r0, r1, r0, r1;
    lsrs    r0, r0, #16;
    orr     r0, r0, r1, lsl #16;
    bx      lr;
}


(zlgarm_zsg)

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

12

主题

39

帖子

0

粉丝