主题 : AXD调试问题,请大家指教 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 13314
精华: 0
发帖: 16
金钱: 80 两
威望: 16 点
综合积分: 32 分
注册时间: 2010-01-22
最后登录: 2010-07-13
楼主  发表于: 2010-02-08 18:24

 AXD调试问题,请大家指教

管理提醒: 本帖被 qq2440 从 micro2440技术交流专区 移动到本区(2013-11-18)
代码如下:
     area   test, code, readonly
          entry
          import main
          mov       r1,#0x3
de     sub       r1,r1,#0x1
          bne       de
          mov       r0,r1
          
          end

当第三次执行 de      sub       r1,r1,#0x1的时候,r1的值为0,此时CPSR的Z位也应该置位,但是实际上CPSR的内容不会根据程序执行结果发生任何变化,导致程序属于一个死循环,请问这是为什么?

AXD截图如下:


寄存器R1的值已经为0,但是CPSR的Z仍然为clear,请问为什么?
QT 的布局怎么搞?
级别: 侠客
UID: 5575
精华: 0
发帖: 81
金钱: 485 两
威望: 193 点
综合积分: 162 分
注册时间: 2009-04-29
最后登录: 2013-12-02
1楼  发表于: 2010-06-23 10:59
sub       r1,r1,#0x1
ARM的指令要想影响CPSR需要加一个后缀,好像是s,例如:
subs     r1,r1,#0x1
具体请查阅arm指令的后缀。
SBC2410+8' LCD
mini2440+NEt 3.5'