Chinaunix首页 | 论坛 | 博客
  • 博客访问: 543341
  • 博文数量: 67
  • 博客积分: 1625
  • 博客等级: 上尉
  • 技术积分: 1053
  • 用 户 组: 普通用户
  • 注册时间: 2012-02-04 14:40
文章分类

全部博文(67)

文章存档

2012年(67)

分类: LINUX

2012-04-26 14:02:06

ARM状态和Thumb状态通俗理解

 

作者:kangear

             Email

             Blogkangear.blog.chinaunix.net

 

《嵌入式系统开发与应用教程(第2版)》上介绍说:有两种状态ARM状态和Thumb状态,当时初学甚为不解,现在一知半解时再看忽然想到了显示中的例子:

     ARM核就好比一个高中学校,那种包含普通高中和职业高中的。普通高中就相当于ARM状态,职业高中就相当于Thumb状态,这样还不能理解的话:可以认为 泡泡卡丁车 中普通模式和加速模式,,卡丁车加速要等到集气管加满,然后“ctrl”一下,就切换到了加速模式,气放完了就又回来了,不管加速模式还是普通模式都是在跑,只是速度不一样而已。

     ARM状态和Thumb状态可以直接通过某些指令直接切换,都是在运行程序,只不过指令长度不一样而已。这个概念对初学者相当重要,因为当ARM Thumb是什么还没弄清楚,怎么能理解两种状态呢?

     他们之间的关系清楚了,这样就可以深入了解ARM状态是什么,Thumb状态是什么了。

     另外:ARM的M系列主要用Thumb指令,ARM9和A系列主要用ARM指令

     S3C2440.S启动代码中根本就没用Thumb指令。

阅读(9870) | 评论(2) | 转发(0) |
给主人留下些什么吧!~~

kangear2012-04-29 19:57:10

虾米小: ARM中ARM和Thumb两个状态是用一组寄存器吗?.....
指令不同 仅此而已……

虾米小2012-04-26 18:32:58

ARM中ARM和Thumb两个状态是用一组寄存器吗?