相关疑难解决方法(0)

无法将8位地址移动到16位寄存器

我试图分配变量来注册这里是代码:

       ORG 100h

        var1 DB 10  ;
        var2 DB 20  ;

        MOV BX,var1 ; error : operands do not match: 16 bit register and 8 bit address
RET
END
Run Code Online (Sandbox Code Playgroud)

但如果换掉第4行:

MOV BL, var1;
Run Code Online (Sandbox Code Playgroud)

有用.所以我的问题是为什么不能8位变量移动到更大的16位寄存器中

我已经提到了这个,这个这个 OP,但它没有回答我的问题.

注意:

  1. 我正在使用emu8086汇编程序
  2. 我是汇编语言的新手,所以如果这是一个愚蠢的问题,我道歉.

x86 assembly x86-16 emu8086

4
推荐指数
1
解决办法
6247
查看次数

标签 统计

assembly ×1

emu8086 ×1

x86 ×1

x86-16 ×1