我正在使用 MARS MIPS 模拟器并使用 Digital Lab Sim。
我的代码的目的是在 Digital Lab Sim 上以十六进制显示数字 0 到 15。
我收到此错误
Runtime exception at 0x00400024: store address not aligned on word boundary 0xffff0011
这是我正在使用的代码:
.data
digitos: .word 0x3F,0x6,0x5B,0x4F,0x66,0x6D,0x7D,0x7,0x7F,0x67,0x77,0x7F,0x39,0x3F,0x79,0x71
contador: .word 16
.text
main:
la $t0,0xFFFF0011
la $a0,contador
lw $t1,0($a0)
li $t9,0
la $t2, digitos
loop:
lw $t3,0($t2)
sw $t3, 0($t0)
addi $t9,$t9,1
addi $t2,$t2,4
blt $t9,$t1,loop
该指令la $t0,0xFFFF0011
是由错误负责的指令。0xFFFF0011 控制左侧 LED,0xFFFF0010 控制右侧 LED。
这是有趣的部分。如果我使用 0xFFFF0010 代码按预期工作,但如果我使用 0xFFFF0011 它不起作用。
我究竟做错了什么?