%@ Page Language="VB" ContentType="text/html" ResponseEncoding="gb2312" %>
工业级品质的ARM平台 |
稳定源于品质,品质源于理解,理解源于学习,我们致力于打造氛围良好的ARM学习平 台,让每一个使用我们产品的工程师能做出高品质、高稳定的作品。 |
2007年10月16日 4:52 |
首页 | 关于我们 | ARM资讯 | ARM学园 | 联系方式 | 购买指南 |
|---|
ARM9系列 |
|---|
| ARM9263开发平台 |
| ARM9263学习板 |
| ARM9263工业板 |
| ATARM9263试验板 |
| ARM7系列 |
| ARM7202开发平台 |
| ARM7202学习板 |
| ARM7202工业板 |
| ARM7202试验板 |
| 微型打印机系列 |
| 针打系列 |
| 热敏系列 |
| 液晶系列 |
公告 这是一个学习的园地,所列文章仅用于学术目的,未经许可,不得用于商业目的。 |
|---|
Thumb 指令及应用
所有的 Thumb 指令都有对应的 ARM 指令,而且 Thumb 的编程模型也对应于 ARM 的编程模型, 在应用程序的编写过程中,只要遵循一定调用的规则, Thumb 子程序和 ARM 子程序就可以互相调用。当处理器在执行 ARM 程序段时,称 ARM 处理器处于 ARM 工作状态,当处理器在执行 Thumb程序段时,称 ARM 处理器处于 Thumb 工作状态。 与 ARM 指令集相比较, Thumb 指令集中的数据处理指令的操作数仍然是 32 位,指令地址也为32 位,但 Thumb 指令集为实现 16 位的指令长度,舍弃了 ARM 指令集的一些特性,如大多数的 Thumb指令是无条件执行的,而几乎所有的 ARM 指令都是有条件执行的;大多数的 Thumb 数据处理指令的目的寄存器与其中一个源寄存器相同。 由于 Thumb 指令的长度为 16 位,即只用 ARM 指令一半的位数来实现同样的功能,所以,要实现特定的程序功能,所需的 Thumb 指令的条数较 ARM 指令多。在一般的情况下, Thumb 指令与ARM 指令的时间效率和空间效率关系为: — Thumb 代码所需的存储空间约为ARM 代码的60%~70% — Thumb 代码使用的指令数比ARM 代码多约30%~40% — 若使用32 位的存储器,ARM 代码比Thumb 代码快约40% — 若使用16 位的存储器,Thumb 代码比ARM 代码快约40%~50% — 与ARM 代码相比较,使用Thumb 代码,存储器的功耗会降低约30% 显然, ARM 指令集和 Thumb 指令集各有其优点,若对系统的性能有较高要求,应使用 32 位的存储系统和 ARM 指令集,若对系统的成本及功耗有较高要求,则应使用 16 位的存储系统和 Thumb指令集。当然,若两者结合使用,充分发挥其各自的优点,会取得更好的效果。
。 |
|---|
| 返回 |
|---|