MASM間接尋址模式,我已經試過以下幾種形式和MASM不喜歡任何人:爲MOV命令
mov byte [myVariable], al
mov byte ptr [myVariable], al
mov [byte myVariable], al
我缺少什麼?爲什麼我似乎不能使用間接尋址。
我從MASM得到的錯誤是在表達「缺少操作員」上的一些線路,有的人說‘結構領域有望’
MASM間接尋址模式,我已經試過以下幾種形式和MASM不喜歡任何人:爲MOV命令
mov byte [myVariable], al
mov byte ptr [myVariable], al
mov [byte myVariable], al
我缺少什麼?爲什麼我似乎不能使用間接尋址。
我從MASM得到的錯誤是在表達「缺少操作員」上的一些線路,有的人說‘結構領域有望’
mov [myVariable], al
應該是足夠的,甚至只是:
mov myVariable, al
但話又說回來 MOV字節的PTR [MYVARIABLE],人 應該也工作,這讓我不知道 「什麼是 'MYVARIABLE'?」
myVariable equ 0404h
不聲明變量,它聲明一個常量。彙編程序只是用對象文件中的值替換所有常量。因此,
mov [myVariable], al
變得
mov [0404h], al
這是無效的。
你得值分配到寄存器,就像這樣:
mov di,0404h
mov byte ptr [di],al
您可以使用立即作爲基準值。你可以這樣做:'mov [ds:myVariable],al'(指定基地相對的任何部分) – 2018-02-21 15:20:56
它是宣佈在頂部如 MYVARIABLE EQU 0404h的地址。 然後一些呼叫正在使用的寄存器與偏移如 BP + 10 – 2009-12-07 16:53:04
間接尋址心不是工作和任一: 和[BP + 22H],77H的結果爲「無效指令操作數」 – 2009-12-07 16:57:33
改成了MOV ds:[myvariable],al 並得到:「無效的指令操作數」 – 2009-12-07 16:59:57