0
我寫這幾行:LEA參數錯誤
num1 dw 7
num1_ptr dw 0
num1_ptr_ptr dw 0
lea num1_ptr, num1
lea num1_ptr_ptr, num1_ptr
mov bx, num1_ptr_ptr
mov bx, [bx]
mov ax, [bx]
call printNum ;printNum is 100% working. it prints the number in ax.
問題是,編譯器說,兩個LEA指令有錯誤的參數。有誰知道爲什麼?
它的一個學校作業,所以我必須用0初始化指針並在指針上使用lea,這樣它會在最後打印num1。 –
@GuyShilman你可以使用一個臨時寄存器,然後存儲它的值:'lea ax,num1' /'mov [num1_ptr],ax'(和另一個指針相同)。請注意,這裏沒有'lea'的實際用法,更常用的'mov ax,OFFSET num1'(或NASM上的'mov ax,num1')將會執行。 –