语法:

  1. CODE16

功能:

CODE16伪指令通知编译器,其后的指令序列为16位的Thumb指令。 若在汇编源程序中同时包含ARM指令和Thumb指令时,可用CODE16伪指令通知编译器其后的指令序列为16位的Thumb指令,CODE32伪指令 通知编译器其后的指令序列为32位的ARM指令。因此,在使用ARM指令和Thumb指令混合编程的代码里,可用这两条伪指令进行切换,但注意他们只通知 编译器 其后指令的类型,并不能对处理器进行状态的切换。

示例:

  1. AREA Init, CODE, READONLY
  2. CODE32 ;//通知编译器其后的指令为32位的 ARM指令
  3. LDR R0, =NEXT+1 ;//将跳转地址放入寄存器R0
  4. BX R0 ;程序跳转到新的位置执行,并将处理器切换到Thumb工作状态
  5. ... ...
  6. CODE16 ;通知编译器其后的指令为16位的 Thumb指令
  7. NEXT LDR R3, =0x3FF
  8. ... ...
  9. END