免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1327 | 回复: 0
打印 上一主题 下一主题

问一个arm汇编问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-04-21 10:53 |只看该作者 |倒序浏览
int checksum_v1(int *data)
{
        char i;   //2nd time, "int" replaces "char"
        int sum = 0;
        for(i = 0; i < 64; i++)
                sum += data[i];
        return sum;       
}

上面这段代码,用arm-linux-gcc -S checksum_v1.c 反汇编一次;
然后讲int 代替char,再反汇编一次,将所得的两个文件比较了一下
1st:
        str        r3, [fp, #-20]
.L2:
        ldr        r3, [fp, #-20]
        cmp        r3, #63
        ble        .L5
        b        .L3
.L5:
        ldr        r3, [fp, #-20]
        mov        r2, r3, asl #2
        ldr        r3, [fp, #-16]
        add        r3, r2, r3
        ldr        r2, [fp, #-24]
        ldr        r3, [r3, #0]
        add        r3, r2, r3
        str        r3, [fp, #-24]
        ldr        r3, [fp, #-20]
        add        r3, r3, #1
        str        r3, [fp, #-20]
2nd:
        strb        r3, [fp, #-17]
.L2:
        ldrb        r3, [fp, #-17]        @ zero_extendqisi2
        cmp        r3, #63
        bls        .L5
        b        .L3
.L5:
        ldrb        r3, [fp, #-17]        @ zero_extendqisi2
        mov        r2, r3, asl #2
        ldr        r3, [fp, #-16]
        add        r3, r2, r3
        ldr        r2, [fp, #-24]
        ldr        r3, [r3, #0]
        add        r3, r2, r3
        str        r3, [fp, #-24]
        ldrb        r3, [fp, #-17]
        add        r3, r3, #1
        strb        r3, [fp, #-17]
差别如上,第一次用到str,第二次用到strb
我想问在arm32位环境中,是否strb执行的会比较快点呢?
谢谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP