全站数据
8 4 2 0 5 8 1

CM3中PC寄存器的LSB为什么读取总是0

在职专升本 | 简单学习,快乐成才!         
问题更新日期:2024-10-19 01:57:02

问题描述

CM3中PC寄存器的LSB为什么读取总是0急求答案,帮忙回答下
精选答案
最佳答案

Exception,而用 IAR 单步执行的时候能正常运行。

同时我将一个函数地址值赋给一个unsigned int 变量之后发现自动加了1。对于这些问题先看权威指南里是怎么说的吧。一,PC指针(程序计数器R15)(权威指南) R15是程序计数器,在汇编代码中称为“PC指针”。因为CM3内部使用了指令流水线,读PC时返回的值 是当前指令的地址+4。比如说: 0x1000: MOV R0, PC ; R0 = 0x1004 如果向PC中写数据,就会引起一次程序的分支(但是不更新LR寄存器)。CM3中的指令至少是半字