资料
  • 资料
  • 专题
基于ARM的嵌入式系统程序开发要点(五)——ARMThumb...
推荐星级:
类别: 消费电子
时间:2020-01-09
大小:195.56KB
阅读数:296
上传用户:二不过三
查看他发布的资源
下载次数
0
所需E币
4
ebi
新用户注册即送 300 E币
更多E币赚取方法,请查看
close
资料介绍
基于ARM的嵌入式系统程序开发要点(五)——ARMThumb的交互工作产业技术与信息 INDUSTRY TECH&INFO 基于 ARM 的嵌入式系统程序开发要点(五)                   ― ―ARM/Thumb的交互工作 ■ ARM 中国  费浙平 在前面的文章中提到过, 很多情况下应用程序需要 在 A R M 跟 T h u m b 状态之间相互切换, 这部分就讨论交 互工作的实现方法和一些注意问题。 存器中的最低位肯定被舍弃, 不起作用。 在 B X 指令的 执行过程中, 最低位正好被用作状态判断的标识, 不会 造成存储器访问不对齐的错误。 下面是一段直接进行状态切换的例程。 ; 从 A R M 状态开始 CODE32 A D R  R0, Into_Thumb+1 BX  R0 ; 汇编关键字 ; 得到目标地址, 末位置1, ; 转向 Thumb ;执行 ;其它代码 CODE16 Into_Thumb … A D R  R5, Back_to_ARM BX … CODE32 Back_to_ARM  R5 ; 汇编关键字 ;Thumb代码段起始地址 ;Thumb 代码 ;得到目标地址, 末位缺 ; 省为 0, 转向 A R M ;执行 ;其它代码 ; 汇编关键字 ;A R M 代码段起始地址 1 需要交互的原因 前面提到过, T h u m b 指令在某些特殊情况下具有比 A R M 指令更为出色的表现, 主要是在代码长度和窄带 宽存储器系统性能两方面。 正是因为 T h u m b 指令在特 定环境下的优势, 它在很多方面得到了广泛应用。 但是 因为下面一些原因, T h u m b 又不可能独立地组成一个 应用系统。 ◇ T h u m b 指令集在功能上只是 A R M 指令集的一个子     集, 某些功能只能在 ARM 状态下执行,如 CPSR 和     协处理器的访问。 ◇进行异常响应时,……
版权说明:本资料由用户提供并上传,仅用于学习交流;若内容存在侵权,请进行举报,或 联系我们 删除。
相关评论 (下载后评价送E币 我要评论)
没有更多评论了
  • 可能感兴趣
  • 关注本资料的网友还下载了
  • 技术白皮书