【问题标题】:Initializing .space in memory for assembly初始化内存中的 .space 以进行组装
【发布时间】:2015-10-27 04:24:15
【问题描述】:

如何将此.space 初始化为零?我希望每一位都是0

我的代码子程序:

.data
.align 2
memspace: .space 256
.text
la   $t7, memspace
move $t2, $zero
add  $t2, $t2, 64         # should this be 256 / 4? confused
loop:
    beq  $t2, $zero, done
    sw   $t0, ($t7)
    addi $t7, $t7,   4
    addi $t2, $t2,   -1
    j loop
done:
    jr $ra

当我使用xspim 并在我的数据段下查看我没有看到256 的保留空间时,我肯定做错了。我觉得我的$t 寄存器对实际的内存位置没有任何作用。我现在真的很困惑。我应该使用堆栈指针吗?

【问题讨论】:

标签: assembly mips spim


【解决方案1】:

你想要的

memspace: .space 0:256

这会将所有内容初始化为 0,尽管我相信 0 是默认值。 见How to initialise a huge array in MIPS assembly?

【讨论】:

    猜你喜欢
    • 2013-11-02
    • 1970-01-01
    • 2018-10-15
    • 1970-01-01
    • 1970-01-01
    • 2021-07-14
    • 2017-11-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多