首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

ARM获得PC指针为何PC=PC+8[上]

ARM获得PC指针为何PC=PC+8[上]

1.为何ARM7中PC=PC+8此处解释为何ARM7中,CPU地址,即PC,为何有PC=PC+8这一说法:
众所周知,AMR7,是三级流水线,其细节见图:
图表 23 AMR7三级流水线





首先,对于ARM7对应的流水线的执行情况,如下面这个图所示:

ARM7
图表 24 ARM7三级流水线状态





然后对于三级流水线举例如下:
图表 25 ARM7三级流水线示例





从上图,其实很容易看出,第一条指令:
add r0, r1,$5
执行的时候,此时PC已经指向第三条指令:
cmp r2,#3
的地址了,所以,是PC=PC+8.
继承事业,薪火相传
返回列表