4.11.1. 指令宽度说明符:.W 和 .N

如果要重写此行为,则可使用 .W 宽度说明符。 即使 16 位编码可用,该指令宽度说明符也会强制汇编器生成 32 位编码。

无论代码将会被汇编为 ARM 代码还是 Thumb(ARMv6T2 或更高版本)代码,您都可在其中使用 .W 说明符。 .W 说明符不会对代码的 ARM 编译产生任何影响。

如果要将指令汇编为 16 位编码,则您可使用 .N 宽度说明符。 在这种情况下,如果指令无法编码为 16 位,或者要将代码汇编为 ARM 代码,则汇编器会生成错误。

使用指令宽度说明符时,必须将说明符紧随在指令助记符和条件代码(如果有)之后,例如:

    BCS.W   label   ; forces 32-bit instruction even for a short branch
    B.N     label   : faults if label out of range for 16-bit instruction
Copyright © 2002-2008 ARM Limited. All rights reserved.ARM DUI 0204IC
Non-Confidential