2011-05-05 62 views
0

我如何预先分配并使用常量值填充数组?MIPS asm相当于x86 dup

例如,在x86平台:

foo dd 10 dup(7) 

汇编器将创建与每个等于10的32位整数〜7

回答

2

一个静态数组,它是一个汇编指令。 您将不得不告诉我们您正在使用什么汇编程序来查看它是否提供类似的指令。 在SPIM中(也在MARS中),你将不得不使用.word指令n次。 喜欢的东西:

.word 7 
.word 7 
.word 7 
.word 7 
.word 7 
.word 7 
.word 7 
.word 7 
.word 7 
.word 7 

此外,检查SPIM reference看其他类似指令。

使用GAS,您也可以使用指令.rept和.end来重复数据块。例如:

.rept 10 
.word 7 
.endr 
+0

我会使用任何支持此指令的汇编程序!大声笑气体,或其他任何东西在那里。扩大声明对于巨大的数组非常有用。 – Saideira 2011-05-05 15:51:11

+0

@Saideira:我更新了答案,提供了如何使用GAS的方法 – gusbro 2011-05-05 16:16:21