求帮忙,每条指令错误的原因 MOV [BX],20 MOV DS,10A0 MOV SS,DS MOV [BX],[SI] MOV 6,AL MOV AL,BX

如题所述

    MOV [BX],20

  错在20是以字节型数据存储到[BX]呢,还是以字型数据存储到[BX]

  如果是字节型的话

  那么改成这样MOV BYTE PTR [BX],20

  如果是字型的话

       那么改成这样MOV WORD PTR [BX],20

 

 

    MOV DS,10A0

  错在立即数不能直接传送给段寄存器

  这样改就可以了

  MOV AX,10A0H

       MOV DS,AX

 

 

    MOV SS,DS

  两个段寄存器不能直接传送数据

  这样改就可以了

  MOV AX,DS   

       MOV SS,AX

 

 

    MOV [BX],[SI]

  和第一个一样,不知道是传送字型数据还是字节数据

  这样改就可以了

  MOV BYTE PTR [BX],[SI]

  或者

       MOV WORD PTR [BX],[SI]

 

 

    MOV 6,AL 

    错在立即数不能作为目的操作数

 

    MOV AL,BX

    错在操作数的类型不匹配,AL是8位,BX是16位

 

    PS:若有不明白的地方,可以追问

温馨提示:内容为网友见解,仅供参考
无其他回答

求帮忙,每条指令错误的原因 MOV [BX],20 MOV DS,10A0 MOV SS,DS MOV...
那么改成这样MOV BYTE PTR [BX],20 如果是字型的话 那么改成这样MOV WORD PTR [BX],20 MOV DS,10A0 错在立即数不能直接传送给段寄存器 这样改就可以了 MOV AX,10A0H MOV DS,AX MOV SS,DS 两个段寄存器不能直接传送数据 这样改就可以了 MOV AX,DS MOV SS,AX MOV [BX],[SI]和第一...

王爽汇编3.1(2)求解
即:mov ax,6622H CS=2000H IP=0003H jmp 0ff0,0100 CS=0FF0H IP=0100H;jmp指令会修改CS和IP寄存器的值。跳转到的地址为:0FF0H*16+0100H=10000H mov ax,2000H CS=0FF0H IP=0103H mov ds,ax CS=0FF0H IP=0105H mov ax,[0008] CS=0FF0H IP=0108H mov ax,[0002] ...

相似回答