1

如何分配一个数组,使其从内存中的某个位置开始?例如

    .data
array: 
    .space 400

将创建一个包含 100 个单词的数组,但我希望让数组从例如内存中的 5000 开始。我怎样才能做到这一点?(我记得在英特尔 asm 中这很容易)

编辑:我在 linux 中使用 spim。顺便说一句,这真的重要吗?

4

1 回答 1

1

您使用的汇编器很重要,因为您要求的语法不是 MIPS 指令集的一部分,它是汇编器指令,因此是特定于汇编器的。

SPIM 文档

.data <addr>:后续项存储在数据段中。如果存在可选参数 addr,则后续项目将从地址 addr 开始存储。

.space n在当前段(必须是SPIM 中的数据段)中分配n 字节的空间。

因此,

    .data 5000
array: 
    .space 400

应该做你想做的。

于 2009-10-13T12:41:57.897 回答