在课堂上学习 MSP430 Launchpad 汇编语言。当前的作业是进行逐步乘法和除法(即用递归加法和减法来模拟它们)。
我和教授一起学习了如何用汇编语言声明变量,但是当我尝试编译时出现了错误。
; Initialization Operations
Init:
mov.b m, R4 ;store m in R4
mov.b M, R5 ;store M in R5
mov.w #0, R6 ;store 0 in R6
for:
add.w R4, R6 ;add contents of R4 to P
dec.w R5 ;decrement R5
jnz for ;jump to R4 until R5 is zero
exitFor:
mov.w R6, P ;store R6 in P
jmp exitFor ;infinite loop
nop ; end program
; Variables for multiplication
.data
m: .byte #40 ; multiplicand
M: .byte #5 ; multiplier
P: .short ; product
错误全部位于
.data
指令下方。 m 和 M 线抛出 [E0200] Bad term in expression
和 [E0000] Commas must separate directive elements
,P 线抛出 [E0005] Operand missing
。我对程序的分区版本也遇到类似的问题。