我正在尝试学习汇编语言。这是我尝试运行的第一个程序。我遇到的问题是 arr 正在被加载并且 instisd 它加载了 1,2 权利,但随后它将 12 作为 c 加载。然后当我添加它时,它会添加字母+数字并给出错误的答案。感谢您的任何帮助。
org $10000
clr.l d0 ; i = 0, we use the .l since i takes part in .l calculation
clr.l d3 ; sum = 0 (temporarily sum lives in d3)
move.w n, d1 ; d1 = n
loop cmp.w d1, d0
bge endloop ; if (i >= n) goto endloop
movea.l #arr, a0 ; a0 = &arr[0]
adda.l d0, a0
adda.l d0, a0 ; a0 = &arr[0] + 2 x i
add.w (a0), d3 ; d3 = d3 + arr[i]
addq.w #1, d0 ; i = i + 1
bra loop ; repeat loop
endloop
move.w d3, sum ; write the sum into memory
org $11000
arr dc.w 1, 2, 12, 4, 21
n dc.w 5
sum dc.w 0
PS我明白十进制12是十六进制C我真的需要知道如何使用十进制而不是十六进制