ZHCUAV7Z september 1995 – march 2023 66AK2E05 , 66AK2H06 , 66AK2H12 , 66AK2H14 , AM1705 , AM1707 , AM1802 , AM1806 , AM1808 , AM1810 , AM5K2E04 , OMAP-L132 , OMAP-L137 , OMAP-L138 , SM470R1B1M-HT , TMS470R1A288 , TMS470R1A384 , TMS470R1A64 , TMS470R1B1M , TMS470R1B512 , TMS470R1B768
在下一边界上对齐 SPC
.align [size in bytes]
.align 指令会在下一边界上对齐段程序计数器 (SPC),具体取决于 size in bytes 参数。size 可以是 2 的任意次幂,但只有某些值可用于对齐。操作数 1 会在下一字节边界上对齐 SPC,如果未提供 以字节表示的大小,则此为默认值。以字节表示的大小 必须等于 2 的幂;该值必须介于 1 和 32,768 之间(包含端点值)。汇编器会将包含空值 (0) 的字汇编到下一以字节表示的大小边界:
1 | 将 SPC 与字节边界对齐 |
2 | 将 SPC 与半字边界对齐 |
4 | 将 SPC 与字边界对齐 |
8 | 将 SPC 与双字边界对齐 |
128 | 将 SPC 与页边界对齐 |
使用 .align 指令具有两种效果:
此示例显示了多种对齐方式,包括 .align 2、.align 8 和默认的 .align。
1 00000000 04 .byte 4
2 .align 2
3 00000002 45 .string "Errorcnt"
00000003 72
00000004 72
00000005 6F
00000006 72
00000007 63
00000008 6E
00000009 74
4 .align
5 0000000c 60000000 .field 3,3
6 0000000c 6A000000 .field 5,4
7 .align 2
8 0000000c 6A006000 .field 3,3
9 .align 8
10 00000010 50000000 .field 5,4
11 .align
12 00000014 04 .byte 4