.space保留n字节内存,不对齐。例如arr: .space 100.byte将 n 个值存储在内存的连续字节中。例如num: .byte 0x01, 0x03.word将 n 个 32 位字连续存储在对齐的内存中。例如val: .word 10, -14, 30.asciiz使用空终止符将字符串存储在内存中。例如,与后面的astr: .asciiz "Hello, world".ascii.byte 0.ascii将字符串存储在内存中,不带空终止符。例如str: .ascii "Hello, world".align在字节边界上对齐下一个数据2^n。例如,.align 2在字边界上对齐下一个值。另一方面,如果 n 为 0,则关闭对齐直到下一个数据段。有关详细信息,请参阅此组件参考。
有关 的更多详细信息.align,请参阅
.align在经典的 MIPS 汇编器(如 MARS)中,其工作方式与现代 GAS 和 clang 不同:在经典的 MIPS 汇编器中,它可以将填充放在较早的标签之前,而不是扩展到填充,无论您将其放在哪里。(.word并且.half还对齐较早的标签,与 不同.space)