【问题标题】:Qtspim: generating an array and changing value, syntax errorQtspim:生成数组并更改值,语法错误
【发布时间】:2020-10-23 17:03:23
【问题描述】:

我正在尝试创建一个简单的程序,它生成一个包含 5 个值的数组 a,并将 3 添加到 a[2]。 我想模拟成QTspim 这是程序:

.data
a: .word 1,2 ,3 ,4 ,5

la $to, a #put the adress of a0 into register t0
lw $t1, 8($to) # put the value of a2 into register 1
addi $t2, $t1, 3
li $v0,10
syscall

这是我收到的错误消息:

有什么想法吗?

【问题讨论】:

  • 在逗号后使用空格,所以1, 2 不是1,2。此外,您需要在代码之前有一个.text 指令,在.text 指令之后需要一个main: 标签。寄存器是$t0,而不是$to
  • 真的吗?空间重要吗?好的,我会检查的

标签: assembly syntax-error mips qtspim


【解决方案1】:

QtSpim 的解析器有点挑剔,所以修正你的数组声明:

a: .word 1, 2, 3, 4, 5

然后你必须打开.text(代码)部分并在你的第一条指令之前定义你的main标签:

.text
.globl main
main:

而且你必须改正$to -> $t0 的拼写错误。

【讨论】:

  • .globl main 指令是无害的,但对于 QtSPIM 来说是不必要的。
猜你喜欢
  • 2017-10-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-08-02
相关资源
最近更新 更多