M0+体系结构与指令系统简介

老子叫甜甜 提交于 2020-01-09 16:56:11

ARM Cortex-M0+出现的背景

32位的M0+系列处理器是ARM公司2012年推出的,主要的目的是替代原有的8位/16位微控制器,具有性价比高,功耗低等特点,其内核性能接近8位或16位竞争产品的2倍。

在这里插入图片描述

这些功能模块提高了M0+处理器的性能及其编程优势,降低了系统的移植难度。

存储器映像

把这4GB空间当作存储器来看待,分成若干区间,都可安排一些实际的物理资源。

在这里插入图片描述

在这里插入图片描述
用于标志ALU的状态:负标志N 零标志Z 进位标志C 溢出标志V 异常号
中断屏蔽寄存器,只有D0位有意义,当该位被置位时,除不可屏蔽中断和硬件错误以外的所有中断都被屏蔽。

ARM Cortex-M0+指令集

p

数据传送类指令

取数指令

在这里插入图片描述

存数指令

在这里插入图片描述

寄存器间数据传送指令

在这里插入图片描述

堆栈操作指令

在这里插入图片描述

数据操作类指令

算术运算类指令

在这里插入图片描述

逻辑运算类指令

移位运算类指令

在这里插入图片描述

跳转指令

控制程序的执行流程

在这里插入图片描述

其他指令

ARM Cortex-M0+ 寻址方式

立即数寻址

操作数直接指令给出,数据包含指令编码中,随着指令一起被编译成机器码存储与程序空间中。

寄存器寻址

操作数来自于寄存器。

偏移寻址及寄存器间接寻址

操作数来自于存储单元,指令中通过寄存器及偏移量给出存储单元的地址。

直接寻址

操作数来自于存储单元,指令中直接给出存储单元地址。

嵌入式技术基础与实践(第4版)

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!