yifanwu
驱动牛犊
驱动牛犊
  • 注册日期2003-08-16
  • 最后登录2005-07-06
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1747回复:3

ARM汇编问题请教

楼主#
更多 发布于:2005-06-13 17:52
    LDR    r0, =|Image$$RO$$Limit| ; Get pointer to ROM data
    LDR    r1, =|Image$$RW$$Base| ; and RAM copy
    LDR    r3, =|Image$$ZI$$Base|
;Zero init base => top of initialised data

    CMP    r0, r1    ; Check that they are different
    BEQ    %F1
0
    CMP    r1, r3    ; Copy init data
    LDRCC   r2, [r0], #4    ;--> LDRCC r2, [r0] + ADD r0, r0, #4
    STRCC   r2, [r1], #4    ;--> STRCC r2, [r1] + ADD r1, r1, #4
    BCC    %B0
1
    LDR    r1, =|Image$$ZI$$Limit| ; Top of zero init segment
    MOV    r2, #0
2
    CMP    r3, r1    ; Zero init
    STRCC   r2, [r3], #4
    BCC    %B2

1。上面这断程序里面那几个顶头写的0,1,2什么意思啊?
2。程序里面的 %BO,%B2是什么意思?
3。经常在程序里面看见 ^ 这个符号,代表什么意思?

谢谢
xuhui250
驱动牛犊
驱动牛犊
  • 注册日期2003-08-20
  • 最后登录2005-08-30
  • 粉丝0
  • 关注0
  • 积分4分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2005-07-20 21:42
%b0就是往后跳转到0这个标签的地方。
简单的生活,平静的工作。
rou_wexx
驱动牛犊
驱动牛犊
  • 注册日期2003-03-04
  • 最后登录2008-11-10
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望3点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2005-07-21 11:19
^ 就是一个伪指令,是一个地址定位符,用来确定数据段所在地址
wolf.qi
驱动牛犊
驱动牛犊
  • 注册日期2004-04-25
  • 最后登录2005-08-05
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2005-08-05 15:20
^ 这个符号主要用在特权模式下的LDM和STM指令中,在STM中,表示所保存的寄存器为用户态寄存器,在LDM中,表示在寄存器装在完成后,将SPCR寄存器中的内容拷贝到CPSR中以实现状态切换(以上内容是在浙江大学出版的毛德操那本嵌入式的书中说的,具体没有验证)。
游客

返回顶部