그래서 최근에 어셈블리 클래스를 가져 왔고 그 중 하나가 과제를주었습니다. 마지막 부분을 제외한 모든 것을 코딩했습니다 ... 나는 주어진 배열에 숫자를 추가하고 합계를 인쇄해야합니다 ... 쉽지요?내 코드에 어떤 문제가 있습니까? (배열에 숫자 추가하기)
.data
array: .word 1,2
size: .word 2
la $s0, array
lw $s1, size
li $t9, 0
.text
loop:
lw $a0, ($s0)
add $a0, $a0, $a0
addi $s0, $s0, 4
add $t9, $t9, 1
blt $t9, $s1, loop
li $v0, 1
syscall
어떤 행이 12 행입니까? 'lw $ a0, ($ s0)'? 정확히 오류 메시지가 무엇입니까? 그리고 이것을 디버거에서 실행하고 레지스터 값을 볼 때 무엇을 볼 수 있습니까? –
@peter Cordes C : \ Users \ Mohamad \ Desktop \ addingarray.asm 오류 13 행 : 0x00400004의 런타임 예외 : 0x00000000 범위를 벗어난 주소 –