您好! 对于我的应用、我将尝试跳回 存储在复位矢量0xFFFE 中的地址。 我将`asm (" branch &0xFFFE")`执行此操作。 在正常操作中、这似乎可以正常工作、但如果我在指令之前暂停执行并尝试逐步执行(就像我尝试验证它是否有效时那样)、PC 始终 在_reset_vector 处加载20位而不是16位的内存。 即使我跳过仿真指令并直接使用`MOV.W`、情况也是如此。 例如、使用下面的存储器、我希望 PC 加载0x06EAE、但加载的是0xF6EAE。 这仅在我在分支指令处或刚好在分支指令之前暂停执行时发生。 如果我只是简单地连接到调试器并从 main 开始运行、就没有问题。 这不是我第一次被这种行为烧毁,我在这里缺少什么吗? 为什么即使使用小代码模型、分支指令也会加载20位 PC?
