THUMB指令集 THUMB指令集 THUMB指令集格式 THUMB指令集是ARM指令集(32位格式)的一个16位版本。ARM指令集减少到16位的TH UMB指令集,同时也减少了许多指令功能。THUMB指令可以通过嵌在ARM920T内核里的dec ompressor来转换成为ARM指令。 作为ARM指令的压缩形式,THUMB指令只有16位,同时收到一些限制。当用到THUMB指令时 ,这些16位指令限制会体现出来。 格式概要 THUMB指令集格式如下图: [pic] 操作码概述 下表示THUMB指令集的一个概要。您可以通过查看表中最右栏的章节来得到更多相关信息 。 [pic] [pic] 格式1:move shifted 寄存器 15 14 13 12 11 10 6 5 3 2 0 |0 |0 |0 |Op |Offset5 |Rs |Rd | [2:0]目标寄存器 [5:3]源寄存器 [10:6]立即数 [12:11]操作码 0=LSL 1=LSR 2=ASR 操作 这些指令可以在低位寄存器之间传送移位值。THUMB汇编语法如下表: 注: 这些指令全都设置CPSR的条件码。 [pic] 指令周期 这种格式的所有THUMB指令都有等价的ARM指令(如上表)。这些THUMB指令的指令周期和 其相应等价的ARM指令的指令周期是一样的。 例如: L……