上下文中不允许内存操作数,将变量复制到数组时数组大小有问题
memory operand not allowed in context, Problem with array size while copying variable to array
我正在尝试将 al 的值复制到数组 (var) 中,但出现错误:
"memory operand not allowed in context"
我不知道为什么它不起作用,我正在使用 movsx 将小尺寸复制到大尺寸..
.data
var word 1000h, 2000h, 3000h
.code
mov al, 60h ;mov 60h to al
movsx var, al ;mov value of al to var
movsx
仅以 movsx reg, r/m
形式存在,具有针对不同尺寸的几种不同组合,但没有 "reverse" 形式。所以它不能用来直接写入内存,虽然它可以用来从内存中读取。
所以在一般情况下,您可以将符号扩展到寄存器中,然后存储该值。
在这种情况下,您可以使用带有 16 位立即数的普通 mov
。
我正在尝试将 al 的值复制到数组 (var) 中,但出现错误:
"memory operand not allowed in context"
我不知道为什么它不起作用,我正在使用 movsx 将小尺寸复制到大尺寸..
.data
var word 1000h, 2000h, 3000h
.code
mov al, 60h ;mov 60h to al
movsx var, al ;mov value of al to var
movsx
仅以 movsx reg, r/m
形式存在,具有针对不同尺寸的几种不同组合,但没有 "reverse" 形式。所以它不能用来直接写入内存,虽然它可以用来从内存中读取。
所以在一般情况下,您可以将符号扩展到寄存器中,然后存储该值。
在这种情况下,您可以使用带有 16 位立即数的普通 mov
。