ARM9 下一条指令的地址为什么是 PC-4

[复制链接]
查看11 | 回复2 | 2016-3-10 22:13:10 | 显示全部楼层 |阅读模式
有关ARM7/ARM9的实际区别我没有看懂,不过不管如何,在流水线中,当你取到(fetch)一个指令时,此时PC寄存器里面保存的是你取到的指令PC,正在译码的指令是PC-4,正在执行的指令是PC-8。正在执行的指令是不能打断的。 当中断发生或者函数跳转时,系统把PC寄存器的值保存到了LR;当恢复的时候,要执行的指令是LR-4而不是LR,否则就丢失一个指令了。...
回复

使用道具 举报

千问 | 2016-3-10 22:13:10 | 显示全部楼层
arm9是32位的,而内存是8位的,因此需要将当前指针减去4个8位内存值(正好的道位实际 下一个地址)...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行