这个ARM汇编程序是做什么的? [英] What does this ARM assembly program do?
本文介绍了这个ARM汇编程序是做什么的?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
谁能给我解释一下这个 ARM 汇编程序是做什么的?
Can somebody explain to me what this ARM assembly program does?
.L5:
.worddata
.wordtotal
_start:
ldr ip, .L5
mov r1, #0
ldr r0, .L5+4
mov r3, r1
mov r2, r1
ldr ip, [ip, #0]
str r1, [r0, #0]
.L2:
ldr r1, [ip, r3]
add r3, r3, #4
cmp r3, #64
add r2, r2, r1
str r2, [r0, #0]
bne .L2
推荐答案
这个功能看似琐碎又愚蠢.
This function seems to be trivial and stupid at the same time.
extern int * worddata;
extern volatile int wordtotal;
void start(void)
{
int i, temp;
wordtotal = 0;
for (i = 0; i < 16; ++i)
{
temp = worddata[i];
wordtotal += temp;
}
}
玩得开心.
这篇关于这个ARM汇编程序是做什么的?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文