当前位置:主页 > SEO优化 >

STM32单片机汇编资料学习(1)

作者: 奕星SEO 分类: SEO优化 发布时间: 2019-08-12 20:08 阅读量:

  总结:Cortex‐M3 只使用 Thumb‐2 指令集。这是个了不起的突破,因为它允许 32 位指令和 16 位指令

  水乳交融,代码密度与处理性能两手抓,两手都硬。而且虽然它很强大,却依然易于使用

  CM3 拥有通用寄存器 R0‐R15 以及一些特殊功能寄存器。 R0‐R12 是最“通用目的” 的, 但是绝大多数的 16 位指令只能使用 R0‐R7(低组寄存器),而 32 位的 Thumb‐2

  指令则可以访问所有通用寄存器。 特殊功能寄存器有预定义的功能, 而且必须通过专用的指令来访问

  寄存器的 PUSH 和 POP 操作永远都是 4 字节对齐的——也就是说他们的地址必须是

  总体来说, Cortex‐M3 支持 4GB 存储空间,如图 所示地被划分成若干区域。

STM32单片机汇编资料学习(1)

  Cortex‐M3 内部有若干个总线 能同时取址和访内(访问内存),它们是:

  私有外设总线有两条代码存储区总线负责对代码存储区的访问,分别是 I‐Code 总线和 D‐Code 总线。前者用于取指,后者用于查表等操作,它们按最佳执行速度进行优化。

  系统总线用于访问内存和外设,覆盖的区域包括 SRAM,片上外设,片外 RAM,片外扩展设备,以及系统级存储区的部分空间。私有外设总线负责一部分私有外设的访问,主要就是访问调试组件。它们也在系统级存储区。

  Cortex‐M3 有一个可选的存储器保护单元。配上它之后,就可以对特权级访问和用户级访问分别施加不同的访问限制。当检测到犯规(violated)时, MPU 就会产生一个 fault 异常,可以由 fault异常的服务例程来分析该错误,并且在可能时改正它。

  MPU 有很多玩法。最常见的就是由操作系统使用 MPU,以使特权级代码的数据,包括操作系统本身的数据不被其它用户程序弄坏。 MPU 在保护内存时是按区管理的(“区”的原文是 region,以后不再中译此名词——译注)。它可以把某些内存 region 设置成只读,从而避免了那里的内容意外被更改;还可以在多任务系统中把不同任务之间的数据区隔离。一句话,它会使嵌入式系统变得更加健壮,更加可靠.


本文链接地址:http://www.seohuizhou.com/seoyouhua/1097.html
上一篇:<<从毒品到儿童色情!今年在黑暗网站上交易了10亿美元!比特币
下一篇:山东:重点项目引领 动能转换加速推进>>