请教2个问题,搞了一天还没弄明白(关于arm中断)

[复制链接]
2405|0
 楼主| chmi 发表于 2007-2-3 17:59 | 显示全部楼层 |阅读模式
ARM, ck, pc, ps, rc
1,为什么我在用户末时下无法修改sp,我用的是sdt调试,程序如下<br /><br />msr&nbsp;cpsr,#0x10<br />ldr&nbsp;r0,=usr_stack+1024<br />mov&nbsp;sp,r0<br />编译能通过,但是单步运行后发现用户模式下sp=0.用下面的两行程序也是这样:<br />msr&nbsp;cpsr,#0x10<br />ldr&nbsp;sp,=usr_stack+1024<br />老是不能修改用户模式的sp,我怎么想都想不通!<br /><br />2,从中断处理程序退出时,树上说执行<br />subs&nbsp;pc,r14,#4<br />我试过的确可用,但是我不明白的是,为什么中断处理退出之前,程序中并没有手动将终端模式更换成其它模式,难道执行subs&nbsp;pc,r14,#4的时候,cpu就知道这个是中断退出的指令?至于用户模式的切换完全是cpu自动完成的?<br />
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

2

帖子

0

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