请教对ARM汇编比较熟的达人!

[复制链接]
3119|3
 楼主| jianxiongs 发表于 2007-7-17 22:43 | 显示全部楼层 |阅读模式
在uboot的920T中有如下一段代码:<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mov&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;r0,&nbsp;#0<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ldr&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;r1,&nbsp;uboot_ram_base_addr<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mov&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;r2,&nbsp;#0x400&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@&nbsp;compare&nbsp;first&nbsp;4-K&nbsp;bytes<br />1001:&nbsp;&nbsp;&nbsp;ldr&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;r3,&nbsp;[r0],&nbsp;#4<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ldr&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;r4,&nbsp;[r1],&nbsp;#4<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;teq&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;r3,&nbsp;r4<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bne&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1002f&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@&nbsp;not&nbsp;matched<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;subs&nbsp;&nbsp;&nbsp;&nbsp;r2,&nbsp;r2,&nbsp;#4<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;beq&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1003f<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;b&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1001b<br /><br />1002:<br />&nbsp;&nbsp;&nbsp;&nbsp;ldr&nbsp;&nbsp;&nbsp;&nbsp;r0,&nbsp;=GPFDAT<br />&nbsp;&nbsp;&nbsp;&nbsp;ldr&nbsp;&nbsp;&nbsp;&nbsp;r1,&nbsp;=0x30<br />&nbsp;&nbsp;&nbsp;&nbsp;str&nbsp;&nbsp;&nbsp;&nbsp;r1,[r0]<br /><br /><br />1:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;b&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1b<br /><br />1003:<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;ldr&nbsp;&nbsp;&nbsp;&nbsp;r0,&nbsp;=GPFDAT<br />&nbsp;&nbsp;&nbsp;&nbsp;ldr&nbsp;&nbsp;&nbsp;&nbsp;r1,&nbsp;=0x40<br />&nbsp;&nbsp;&nbsp;&nbsp;str&nbsp;&nbsp;&nbsp;&nbsp;r1,[r0]<br /><br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@&nbsp;jump&nbsp;to&nbsp;ram<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ldr&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;r0,&nbsp;uboot_ram_base_addr<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;add&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pc,&nbsp;r10,&nbsp;r0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/*&nbsp;fake&nbsp;^^;&nbsp;&nbsp;return&nbsp;here.&nbsp;*/<br /><br />copy_myself_failed:<br />1:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;b&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1b<br /><br />这里面为什么每个跳转(比如1001,1002,1003)后面都带一个字母呢?如(1001f,1002f,1003b)等,理解为二进制或者十六进制似乎不妥。请教各位,有没有更好的解释?
农民讲习所 发表于 2007-7-17 23:43 | 显示全部楼层

E文第一个字母,不是进制

  
bqt 发表于 2007-7-18 10:13 | 显示全部楼层

re

后面的字母指明了标号的位置,b(back)代表此标号在当前位置之后,f(forward)代表此标号在当前位置之前。<br />
 楼主| jianxiongs 发表于 2007-7-18 14:34 | 显示全部楼层

十分感谢

十分感谢两位前辈,我明白了!谢谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

12

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部