weixin_40452160 2022-04-24 11:35 采纳率: 100%
浏览 25
已结题

Arm reset中断入口地址计算

可有解答下,pc,[pc,#24] ; [0x20] = 0x58,是怎么指向0x00000020,然后又00000058 这个地址的? 重点是如何指向到向0x00000020。
按照流水线技术,汇编语句pc,[pc,#24]的效果应该是pc = 0 + 8 + 0x24,但是,按照这合格源码尽然是0x00000020。

CPU 是arm R4。

源码如下:

img

  • 写回答

1条回答 默认 最新

  • weixin_40452160 2022-04-24 14:24
    关注

    可能进入中断时,PC寄存器不存在流水线+8的情况,此时,流水线可能是处于清空复位状态。

    还是不明白下面这句话怎么得到的0x20,难道复位时PC初始值为-4,然后去读取0x00000020处的值???彻底迷糊了。。。
    LDR pc,[pc,#24] ; [0x20] = 0x58

    评论

报告相同问题?

问题事件

  • 系统已结题 5月2日
  • 创建了问题 4月24日

悬赏问题

  • ¥15 用C语言写离散数学相关问题
  • ¥30 如何用python的GephiStreamer连接到gephi中,把Python和Gephi的具体操作过程都展示,重点回答Gephi软件的调试,以及如果代码的端口在浏览器中无法显示怎么处理
  • ¥15 ansys机翼建模肋参数
  • ¥15 Sumo软件无法运行
  • ¥15 如何在vscode里搭建stata的编辑环境?
  • ¥15 dify知识库创建问题
  • ¥15 如何用C#的chart画1000万个点不卡顿
  • ¥15 爬虫技术找到网上看过房源客户的电话
  • ¥20 代码:Python随机森林反演生物量数据处理问题
  • ¥15 Linux系统的命令行窗口回车变成了换行,无法执行命令了