1.操作状态(operation state):
debug state:处理器在调试器发起halt或匹配到断点时,会进入debug state并停止执行指令.
thumb state:处理器正在运行程序代码(thumb 指令)时会处于thumb state。 和传统的ARM处理器不同,cortex m3
不支持ARM 指令集,所以没有ARM state.
2.操作模式(operation mode):
handler mode:指执行异常处理例程(如ISR)时的模式。在handler mode中,处理器一直处于特权访问层次(privileged level).
thread mode:指执行普通应用程序代码时的状态,处理器可以处于特权访问层次(privileged level)或非特权访问层次(unprivileged level)
3访问层次(access level):
在thread mode中,软件可以实现unprivileged到privileged的切换,但反向的切换必须通过中断(SVC)实现,这是因为access level由CONTROL寄存器控制,而只有在privileged level下才能访问这个寄存器。

由于cortex m3的指令均为16bit或32bit,对指令存储器寻址用的地址LSB应该都为0,但是对LR和PC,一些分支/调用/读存储器指令需要把它们的LSB设为1以表明是thumb state,否则会被认为尝试访问ARM指令而导致fault,vector table中的内容LSB均为1.但对C编程来讲,LR/PC的LSB都会由编译器自动决定,不会出现问题。

cortex m3的操作模式和状态相关推荐

  1. Cortex M3处理器工作模式及中断过程

    来自::http://blog.csdn.net/ffgamelife/article/details/6947300 1.      工作模式 线程模式(Thread mode):处理器复位或异常退 ...

  2. Cortex‐M3和Cortex‐M0是否都能位带操作

    最近在进行stm32l011f4的编程,想到stm32有位带操作,便想试一试,但是事与愿违,先贴下位带操作代码 Cortex‐M0的位带操作代码 //IO输出方向设置 #define SDA_IN() ...

  3. cortex-m3 操作模式 寄存器组 异常类型 堆栈 中断

    cortex-m3 操作模式 寄存器组 异常类型 堆栈 中断 参考 操作模式 处理器的操作模式:为了区别正在执行代码的类型.复位后,处理器进入线程模式.特权级. 处理者模式(handler mode) ...

  4. Cortex-M4操作模式

    Cortex-M4操作模式 Cortex-M4支持 2 个模式和两个权限等级. 两种运行模式:hander模式和线程模式 操作权限:特权级和用户级 为了提供一种存储器访问的保护机制,使得普通的用户程序 ...

  5. Cortex、ARMv8、arm架构、ARM指令集、soc?Cortex A8、A9都是ARMv7a 架构;Cortex M3、M4是ARMv7m架构;前者是处理器(内核)后者是指令集的架构(架构)

    架构组成元素的指令集状态或者语法thumb指令集与arm指令集的区别例如thumb指令集是什么_thumb指令集与arm指令集的区别以及thumb-2的关系在下一文中介绍,本文暂时不讨论 有粉丝问我到 ...

  6. 内核:多内核操作模式

    多内核操作模式: 1.  <<QNX-–-微内核结构的实时操作系统.pdf>> 2.  对称多处理"(Symmetrical Multi-Processing) SM ...

  7. Android心得4.1--文件的保存与读取及文件的操作模式详解.doc

    一.保存到手机内存 1.  很多时候我们的软件需要对处理后的数据进行存储或再次访问.Android为数据存储提供了多种方式,分别有如下几种: l     文件(采用IO数据流的方式) l     Sh ...

  8. 在使用win 7 无线承载网络时,启动该服务时,有时会提示:组或资源的状态不是执行请求操作的正确状态。 网上有文章指出,解决这个问题的方法是在设备管理器中启动“Microsoft托管网络虚拟适配

    在使用win 7 无线承载网络时,启动该服务时,有时会提示:组或资源的状态不是执行请求操作的正确状态. 网上有文章指出,解决这个问题的方法是在设备管理器中启动"Microsoft托管网络虚拟 ...

  9. Cortex M3 NVIC与中断控制

    Cortex M3 NVIC与中断控制 宗旨:技术的学习是有限的,分享的精神是无限的. 一.NVIC概览 --嵌套中断向量表控制器 NVIC 的寄存器以存储器映射的方式来访问,除了包含控制寄存器和中断 ...

最新文章

  1. Java计算两个字符串日期之间的天数差
  2. 设计新Xlator扩展GlusterFS[转]
  3. java static成员变量方法和非static成员变量方法的区别 ( 二 )
  4. jquery ajax 删除数据,JQuery ajax 保存数据,删除数据
  5. android源代码下载AE 文字样式,阅读Android framework源代码方式
  6. 期货市场技术分析05_交易量和持仓兴趣
  7. 使用burp suite验证是否存在csrf漏洞
  8. Duck Duck Go Architecture
  9. 引用还是传值——被打脸后才发现多年的理解是错的
  10. springboot tmp目录生成机制
  11. 程序猿和hr面试时的巅峰对决
  12. HyperV使用主机摄像头
  13. 自然语言一般使用计算机,自然语言理解
  14. 数据库SQL实战-查找描述信息中包括robot的电影对应的分类名称以及电影数目(mysql)
  15. 高企!2022年武汉市高新技术企业奖励补贴以及申报条件汇总!
  16. SQL Server 题库
  17. 柯西积分不等式的证明题
  18. 二项式定理在算法中的应用
  19. 2.配置文件 setting.py
  20. 残躯演绎完美爱情 浙江“轮椅夫妻”温暖千万网友

热门文章

  1. 概率密度雅可比行列式
  2. vs2017开发ActiveX(主讲OCX)(十)、手动添加自定义方法
  3. 从哈希表到MD5摘要算法
  4. QAT量化感知训练(一)【详解】
  5. 数据结构与算法第2章:链表
  6. 360搜索是废了还是彻底商业化了?
  7. 程序员接私活一定要知道的事情,我走的弯路你们都别走了
  8. 网易免费企业邮箱MX验证,如何通过验证?(阿里云域名篇)。
  9. 估计标准误差syx_什么是判定系数r2和估计标准误差syx
  10. 苹果电脑修改用户名方法