一. Cortex-M4处理器的主要特点
(1)32位RISC处理器,其内核采用哈佛总线结构(程序指令存储和数据存储分开),取指令和数据访问可以同时进行。
(2)内部含有32位寄存器组,内部数据通路和总线接口,可以高效处理8位和16位数据,还支持涉及64位数据的多种运算
(3)工作在Thumb状态,采用Thumb-2指令体系。
区分ARM状态和Thumb状态:
1. ARM状态是ARM处理器的默认状态,支持所有32位的指令集,在ARM状态下,存储器可以同时访问32位的数据和地址空间,具有更好的代码效率和执行速度。
2. Thumb状态是另一种工作状态,支持16位指令集,有着更高的代码密度和功耗。Thumb-1指令是16位的指令格式,能够提供基本的数据处理和流程控制操作,包括算术运算、逻辑运算、条件分支和跳转等。而Thumb-2指令则是32位的指令格式,可以执行高级的数据处理和存储访问操作,并且支持更复杂的程序控制结构,如循环和函数调用等。同时,Thumb-2指令还能够使用更强大的32位数据寄存器,提高了数据处理性能。
二. 寄存器组
寄存器组中有16个寄存器,其中13个32位通用寄存器,另外三个有特殊用途。
(1)通用寄存器R0~R12
R0~R7为低寄存器,R8~R12为高寄存器。由于指令中可用的空间有限,因此许多16为指令只能访问低寄存器。高寄存器则可以用于32位指令和几个16位指令。
(2)栈指针R13(SP)
栈指针R13用于指明当前栈存储单元的地址,用于栈存储的访问。改变它的值既可以使用赋值或者运算指令实现,也可以使用栈操作指令实现。另外,异常进入与返回时会自动改变值。
处理器有两个栈指针:主栈指针(MSP)和进程栈指针(PSP)。前者为

最低0.47元/天 解锁文章
3094

被折叠的 条评论
为什么被折叠?



