更多“说明下列指令的操作结果。 (1)LEA  AX, NUMB  (2)LEA  EAX, NUMB  (3)LDS  DI, LIST  (4)LES  BX, CAT”相关问题
  • 第1题:

    假设(DS)=1000H,(DI)=0400H,(10410H)=00H,下列指令执行后使(AX)=0420H的指令是( )。

    A.LEA AX,20[DI]

    B.MOV AX,OFFSET DI

    C.MOV AX,20[DI]

    D.LEA AX[DI]


    正确答案:A

  • 第2题:

    假设(DS)=1000H,(DI)=0400H,(10410H)=FFH,(10041H)=00H,下列指令执行(AX)值是0420H的指令是( )。

    A.LEA AX,20[DI]

    B.MOV AX,OFFSET DI

    C.MOV AX,20[DI]

    D.LEA AX,[DI]


    正确答案:A
    解析:选项A)中指令的功能是将源操作数的偏移地址送入寄存器AX,即将20H+0400H的和送AX寄存器。选项B)中指令源操作数的使用是错误的,DI寄存器应用变量或标号名替代。选项C)指令的功能是将DS段中偏移地址为0410H处的内存单元内容送AX寄存器,即(AX)=00FFH。选项D)中指令是将0400H送AX寄存器。即(AX)=0400H。

  • 第3题:

    用一条指令仅实现将AX←BX+SI的方法是()。

    • A、XCHG AX,[BX][SI]
    • B、MOV AX,[BX+SI]
    • C、LEA AX,BX[SI]
    • D、LEA AX,[BX][SI]

    正确答案:D

  • 第4题:

    判断下列指令是否正确。若不正确,指出错误原因。 (1)MOV SI, DL (2)MOV ES, 1000H (3)LEA AX, 3006H (4)MOV [BP][DI], 0 (5)MOV [SI], [DI] (6)MOV [DI],[BX] (7)MOV [DX+SI],AL (8)MUL AL , 58H (9)MOV DS,SEG DAT (10)MOV WORD PTR [BX],-1


    正确答案: (1)指令MOV SI, DL是错误的,两个操作数类型不匹配。
    (2)指令MOV ES, 1000H是错误的,装载段寄存器时,源操作数不能为立即数。
    (3)指令LEA AX, 3006H是错误的,LEA指令的源操作数必须为内存操作数。
    (4)指令MOV [BP][DI], 0是错误的,操作数类型无法确定。
    (5)指令MOV [SI], [DI] 是错误的,不能同时出现两个内存操作数。
    (6)MOV [DI],[BX] ;错,存储器不能传存储器
    (7)MOV[DX+SI],AL; 错,DX不能用作基址寻址
    (8)MUL AL , 58H ;错,乘法指令不能用立即数
    (9)MOV DS,SEG DAT;错,立即数不能送段寄存器
    (10)MOV WORD PTR [BX],-1 ;正确 ,-1送BX指示的字单元

  • 第5题:

    指出下列指令中源操作数的寻址方式,并说明指令操作的结果。 (1)MOV  BX, ‘BC’  (2)MOV  AX, DATA  (3)MOV  DX, [BX]  (4)MOV  AL, [BX+DI]  (5)MOV  CL, LIST[BX]  (6)MOV  AX, FILE[BX+DI+200H]  (7)DAA  (8)XLAT  (9)IN  AX, DX  (10)INT  21H


    正确答案: (1)立即寻址。操作结果是把ASCII码CB(4342H)传送到BX.
    (2)使用AX的直接寻址。操作结果是把数据段存储单元DATA1与DATA1+1的字内容复制到AX中。
    (3)寄存器间接寻址。把数据段由BX间接寻址的存储单元的字内容复制到DX中。
    (4)基址加变址寻址的寻址方式。操作结果是把由BX+DI寻址的数据段存储单元的字的内容复制到AL。
    (5)寄存器相对寻址。操作结果是把数据段由LIST+BX寻址的字节内容送CL。
    (6)相对基址加变址的寻址方式。操作结果是把由BX+DI+200H寻址的数据段存储单元的字内容送入AX。
    (7)源操作数为寄存器(AL)寻址。它是把AL中的两位BCD码加法运算的结果调整为两位压缩型十进制数,仍保留在AL中。
    (8)源操作数为寄存器(BX)相对寻址。操作结果是把由BX+AL指定的内容表格中的字节代码内容送AL。
    (9)源操作数为寄存器(DX)间接寻址。它是把DX和DX+1所指定的两个端口地址的字的内容送入AX。
    (10)源操作数为直接寻址,直接寻址地址为21H×4, 21H×4+2。操作结果是把21H×4~21H×4+3内存单元中的双字分别送到IP与CS。

  • 第6题:

    指出以下指令中,哪些指令是非法的,并说明为什么(8086系统)。 (1) PUSH 1234H (2) MOV CS,AX (3) IN AX, 300 (4) MOV AX,[DX+12] (5) MOV BX,[BX] (6) MOV DS,1000H (7) XCHG AL,AL (8) MOV AL,100H (9) MOV DX,AL (10)LEA BL,[BX+5] (11)LEA DX,BX (12)MOV [1000H],12H (13)ADD AX,DS (14)SUB [0100H],BYTE PTR [0001] (15)SHL BL,2 (16)SHR CL,CL (17)MUL AL,BL (18)INT 400


    正确答案: (1)非法,8086系统不允许PUSH指令的操作数为立即数;
    (2)非法,MOV指令中CS不能作为目的操作数;
    (3)非法,端口号大于0FFH;
    (4)非法,DX不能出现在中括号[]内;
    (5)合法;
    (6)非法,不能把立即数赋给段寄存器;
    (7)合法;
    (8)非法,源操作数大于0FFH,不能赋给8位寄存器AL;
    (9)非法,源操作数是8位寄存器,目的操作数却是16位寄存器,不匹配;
    (10)非法,LEA指令得到的是16位偏移量,但目的操作数是8位寄存器;
    (11)非法,LEA指令的源操作数只能是存储器操作数;
    (12)非法,指令存在歧义,无法确定传送的是字节还是字;
    (13)非法,段寄存器不能参与算术运算;
    (14)非法,源和目的寄存器不能同为存储器操作数;
    (15)非法,在8086系统中,移位次数大于1时需要将移位次数存放到CL中;
    (16)合法;
    (17)非法,在8086系统中MUL指令没有双操作数的用法;
    (18)非法,中断类型号大于0FFH。

  • 第7题:

    与MOVBX,OFFSETX等价的指令是()

    • A、MOV BX,X
    • B、LDS BX,X
    • C、LES BX,X
    • D、LEA BX,X

    正确答案:D

  • 第8题:

    与MOV AX,OFFSET VAR指令完全等效的指令是()。

    • A、MOV AX,VAR
    • B、LDS AX,VAR
    • C、LES AX,VAR
    • D、LEA AX,VAR

    正确答案:D

  • 第9题:

    下面有语法错误的指令是()。

    • A、LDS  BL,VAR[SI]
    • B、LEA  BX,VAR[SI]
    • C、LES  DI,VAR[BX]
    • D、LEA  DI,VAR[BP]

    正确答案:A

  • 第10题:

    问答题
    判断下列指令是否正确。若不正确,指出错误原因。  (1)MOV AX, [EBX]  (2)MOV SI, DL  (3)MOV EBP, [ESP][EAX*3] (4)LEA AX, 3006H   (5)MOV [BP][DI], 0    (6)MOV [SI], [DI]   (7)MOV ES, 1000H   (8)MOV AX, X+2  (9)MOV AX, CX+2    (10)MOV [EAX][EAX*2], AL

    正确答案: (1)指令MOV AX, [EBX]是正确的。
    (2)指令MOV SI, DL是错误的,两个操作数类型不匹配。
    (3)指令MOV EBP, [ESP][EAX*3] 是错误的,比例因子不能为3。
    (4)指令LEA AX, 3006H是错误的,LEA指令的源操作数必须为内存操作数。
    (5)指令MOV [BP][DI], 0是错误的,操作数类型无法确定。
    (6)指令MOV [SI], [DI] 是错误的,不能同时出现两个内存操作数。
    (7)指令MOV ES, 1000H是错误的,装载段寄存器时,源操作数不能为立即数。
    (8)如果“X”是用常数表达式定义的符号(例如:X   EQU   5+6),或者是用“DW”定义的内存变量,指令MOV AX, X+2是正确的。否则这条指令是错误的。
    (9)指令MOV AX, CX+2是错误的,源操作数表达式CX+2不是一个可以直接计算的“常数表达式”。
    (10)指令MOV [EAX][EAX*2], AL是正确的。
    解析: 暂无解析

  • 第11题:

    问答题
    执行LEA  BX, [DI]指令和执行MOV  BX,  DI指令,哪条指令执行较快?

    正确答案: 执行MOV  BX,  DI指令比执行LEA  BX,  [DI]指令要快。
    解析: 暂无解析

  • 第12题:

    问答题
    判断下列指令是否正确。若不正确,指出错误原因。 (1)MOV SI, DL (2)MOV ES, 1000H (3)LEA AX, 3006H (4)MOV [BP][DI], 0 (5)MOV [SI], [DI] (6)MOV [DI],[BX] (7)MOV [DX+SI],AL (8)MUL AL , 58H (9)MOV DS,SEG DAT (10)MOV WORD PTR [BX],-1

    正确答案: (1)指令MOV SI, DL是错误的,两个操作数类型不匹配。
    (2)指令MOV ES, 1000H是错误的,装载段寄存器时,源操作数不能为立即数。
    (3)指令LEA AX, 3006H是错误的,LEA指令的源操作数必须为内存操作数。
    (4)指令MOV [BP][DI], 0是错误的,操作数类型无法确定。
    (5)指令MOV [SI], [DI] 是错误的,不能同时出现两个内存操作数。
    (6)MOV [DI],[BX] ;错,存储器不能传存储器
    (7)MOV[DX+SI],AL; 错,DX不能用作基址寻址
    (8)MUL AL , 58H ;错,乘法指令不能用立即数
    (9)MOV DS,SEG DAT;错,立即数不能送段寄存器
    (10)MOV WORD PTR [BX],-1 ;正确 ,-1送BX指示的字单元
    解析: 暂无解析

  • 第13题:

    假设(DS)=1000H,(D1)=050(0,(10510H)=0FFH,(10511H)=00H,下列指令执行后使(AX)=052011的是( )。

    A.LEA AX,20 [DI]

    B.MOV AX,OFFSET DI

    C.MOV AX,20 [DI]

    D.LEA AX,[DI]


    正确答案:A

  • 第14题:

    下列语句中有语法错误的语句是()

    • A、MOV AX,[SI][DI]
    • B、ADD AX,[BX]
    • C、CMP[BX],AX
    • D、LEA SI,20H[BX]

    正确答案:A

  • 第15题:

    获得BUFFER单元有效地址的汇编指令为()。

    • A、MOV BX,BUFFER
    • B、LEA BX,BUFFER
    • C、MOV BX,[BUFFER]
    • D、LDS BX,BUFFER

    正确答案:B

  • 第16题:

    与MOV AX,OFFSET VAR指令不等效的指令是()。

    • A、MOV BX,VAR
    • B、LES BX,VAR
    • C、LES AX,VAR
    • D、LEA BX,VAR

    正确答案:A,B,C

  • 第17题:

    执行LEA  BX, [DI]指令和执行MOV  BX,  DI指令,哪条指令执行较快?


    正确答案:执行MOV  BX,  DI指令比执行LEA  BX,  [DI]指令要快。

  • 第18题:

    下列四条指令中,()是错误的。

    • A、LEA AX,[2728H]
    • B、LEA CX,6093H
    • C、LEA SP,[0482H]
    • D、LEA BX,[BP+SI]

    正确答案:B

  • 第19题:

    判断下列指令是否正确。若不正确,指出错误原因。  (1)MOV AX, [EBX]  (2)MOV SI, DL  (3)MOV EBP, [ESP][EAX*3] (4)LEA AX, 3006H   (5)MOV [BP][DI], 0    (6)MOV [SI], [DI]   (7)MOV ES, 1000H   (8)MOV AX, X+2  (9)MOV AX, CX+2    (10)MOV [EAX][EAX*2], AL 


    正确答案: (1)指令MOV AX, [EBX]是正确的。
    (2)指令MOV SI, DL是错误的,两个操作数类型不匹配。
    (3)指令MOV EBP, [ESP][EAX*3] 是错误的,比例因子不能为3。
    (4)指令LEA AX, 3006H是错误的,LEA指令的源操作数必须为内存操作数。
    (5)指令MOV [BP][DI], 0是错误的,操作数类型无法确定。
    (6)指令MOV [SI], [DI] 是错误的,不能同时出现两个内存操作数。
    (7)指令MOV ES, 1000H是错误的,装载段寄存器时,源操作数不能为立即数。
    (8)如果“X”是用常数表达式定义的符号(例如:X   EQU   5+6),或者是用“DW”定义的内存变量,指令MOV AX, X+2是正确的。否则这条指令是错误的。
    (9)指令MOV AX, CX+2是错误的,源操作数表达式CX+2不是一个可以直接计算的“常数表达式”。
    (10)指令MOV [EAX][EAX*2], AL是正确的。

  • 第20题:

    与MOV BX,OFFSET VAR指令完全等效的指令是( )。 

    • A、MOV BX,VAR
    • B、LDS BX,VAR
    • C、LES BX,VAR
    • D、LEA BX,VAR

    正确答案:D

  • 第21题:

    与指令MOV BX,OFFSET VAR功能完全等效的指令是()。

    • A、MOV BX, VAR
    • B、LDS BX, VAR
    • C、LES BX, VAR
    • D、LEA BX, VAR

    正确答案:D

  • 第22题:

    问答题
    指出下列指令中源操作数的寻址方式,并说明指令操作的结果。 (1)MOV  BX, ‘BC’  (2)MOV  AX, DATA  (3)MOV  DX, [BX]  (4)MOV  AL, [BX+DI]  (5)MOV  CL, LIST[BX]  (6)MOV  AX, FILE[BX+DI+200H]  (7)DAA  (8)XLAT  (9)IN  AX, DX  (10)INT  21H

    正确答案: (1)立即寻址。操作结果是把ASCII码CB(4342H)传送到BX.
    (2)使用AX的直接寻址。操作结果是把数据段存储单元DATA1与DATA1+1的字内容复制到AX中。
    (3)寄存器间接寻址。把数据段由BX间接寻址的存储单元的字内容复制到DX中。
    (4)基址加变址寻址的寻址方式。操作结果是把由BX+DI寻址的数据段存储单元的字的内容复制到AL。
    (5)寄存器相对寻址。操作结果是把数据段由LIST+BX寻址的字节内容送CL。
    (6)相对基址加变址的寻址方式。操作结果是把由BX+DI+200H寻址的数据段存储单元的字内容送入AX。
    (7)源操作数为寄存器(AL)寻址。它是把AL中的两位BCD码加法运算的结果调整为两位压缩型十进制数,仍保留在AL中。
    (8)源操作数为寄存器(BX)相对寻址。操作结果是把由BX+AL指定的内容表格中的字节代码内容送AL。
    (9)源操作数为寄存器(DX)间接寻址。它是把DX和DX+1所指定的两个端口地址的字的内容送入AX。
    (10)源操作数为直接寻址,直接寻址地址为21H×4, 21H×4+2。操作结果是把21H×4~21H×4+3内存单元中的双字分别送到IP与CS。
    解析: 暂无解析

  • 第23题:

    问答题
    说明下列指令的操作结果。 (1)LEA  AX, NUMB  (2)LEA  EAX, NUMB  (3)LDS  DI, LIST  (4)LES  BX, CAT

    正确答案: (1)操作结果是将NUMB符号地址的16位偏移值装入AX。
    (2)操作结果是将NUMB符号地址的32位偏移值装入EAX。
    (3)操作结果是将存储在数据段存储位置LIST的32位数据装入DI和DS。
    (4)操作结果是将存储在数据段存储位置CAT的32位数据装入BX和ES。
    解析: 暂无解析