【发布时间】:2014-03-04 04:03:31
【问题描述】:
例如,我想将寄存器中的 DWORD 值移动到类型为 WORD 的内存位置,但出现错误:
mov [arr + eax*TYPE arr], edx ; error: operands must be same size
[] 括号取消对 WORD 类型数组元素的引用。
我也试过这样做:
mov dx, edx ; error: operands must be same size.
mov [arr + eax*TYPE arr], dx
尝试使用 PTR 也没有运气:
mov dx, WORD PTR edx ; error: invalid use of register
或
mov WORD PTR [arr + eax*TYPE arr], edx ; error: invalid use of register
或
mov [arr + eax*TYPE arr], WORD PTR edx ; error: invalid use of register
解决方案?感谢您的帮助!
【问题讨论】:
-
你不能把一加仑水放进一个 1/2 加仑的水壶里!
标签: pointers assembly type-conversion masm cpu-registers