更多“指出下列指令是否正确,若不正确说明原因:MOV CL,A8H”相关问题
  • 第1题:

    下面数据传送指令中,正确的指令是( )。

    A.MOV BUFl,BUF2

    B.MOV CS,AX:

    C.MOV CL,1000H

    D.MOV DX,WORD PTR [BP+DI]


    正确答案:D

  • 第2题:

    指出下列指令中源操作数的寻址方式,并说明指令操作的结果。 (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。

  • 第3题:

    指出下列指令是否正确,若不正确说明原因:MOV DI, [AX]


    正确答案: 错,AX不能做为间址寄存器

  • 第4题:

    指出下列指令是否正确,若不正确说明原因:MOV DS, 2010H


    正确答案: 错,立即数不能传送到DS

  • 第5题:

    判断指令是否正确:MOV AX,[SI+DI]


    正确答案:错误

  • 第6题:

    指出下列指令是否正确,若不正确说明原因:JMP FAR [BX+SI]


    正确答案:错,转移指令中转移的目标地址表达方式错误

  • 第7题:

    判断下列指令是否正确。若不正确,指出错误原因。  (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是正确的。

  • 第8题:

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


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

  • 第9题:

    在下列指令的表示中,不正确的是()

    • A、MOV AL,[BX+SI]
    • B、JMP SHORT DONI
    • C、DEC [BX]
    • D、MUL CL

    正确答案:C

  • 第10题:

    问答题
    判断下列指令是否正确。若不正确,指出错误原因。 (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指示的字单元
    解析: 暂无解析

  • 第11题:

    问答题
    指出下列指令中源操作数的寻址方式,并说明指令操作的结果。 (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。
    解析: 暂无解析

  • 第12题:

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

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

  • 第13题:

    判断下列指令是否正确。若不正确,指出错误原因。 (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指示的字单元

  • 第14题:

    指出下列指令是否正确,若不正确说明原因:CMP [BX], [SI]


    正确答案:错,比较指令的两个操作数不能同时为存储器操作数

  • 第15题:

    指出下列指令是否正确,若不正确说明原因:ADD [BP+DI]


    正确答案: 错,加法指令ADD,缺少源操作数

  • 第16题:

    指出下列指令是否有错,并说明理由。 (1)MOV[DI],[SI]; (2)MOVC,SAX; (3)MOV120,0AX; (4)MOVD,SCS; (5)PUSHFLAG; (6)POPCS; (7)MOVC,LAX; (8)MOV[5000H,][1000H];


    正确答案:(1)错,内存单元之间不能直接进行数据传送
    (2)错,CS不能做目的操作数
    (3)错,立即数不能做目的操作数
    (4)错,段寄存器之间不能互相传送
    (5)对
    (6)错,CS不能做目的操作数
    (7)错,源、目的操作数长度不一致
    (8)错,内存单元之间不能直接进行数据传送

  • 第17题:

    指出下列指令是否正确,若不正确说明原因:PUSH AL


    正确答案: 错,栈操作,操作数类型必须为WORD类型

  • 第18题:

    指出下列指令是否正确,若不正确说明原因:XCHG CL,CH


    正确答案: 正确

  • 第19题:

    说明下列指令中不合法的原因。 (1)MOV 64H, CL  (2)MOV CL, 100H  (3)MOV CL, 256  (4)MOV SS, 6180H  (5)MOV CS, WORD PTR[BX] (6)MOV DS, SS  (7)XCHG AL, 40H (8)XCHG ES, AX  (9)IN 160H, AL  (10)CMP [SI], [BX] (11)MOV DS, 1000H  (12)POP CS


    正确答案: (1)错在立即数64H作目标操作数。
    (2)和(3)错在目标操作数均超过了字节范围。
    (4)错在立即数直接传送给段寄存器。
    (5)错在把存储器操作数作数送CS, 这可能引起系统运行紊乱。
    (6)错在两个段寄存器之间直接传送。
    (7)错在用立即数作交换指令的操作数。
    (8)错在用段寄存器作交换指令的操作数。
    (9)错在当端口地址超过FFH时还在用直接寻址端口号。
    (10)错在用两个存储器操作数做比较。
    (11)错在将立即数直接传送到CS,必须先传送到某个寄存器,再经过寄存器传送到CS。
    (12)错在将存储器堆栈中的数据直接弹出到CS。

  • 第20题:

    下列传送指令中,有错误的是()。

    • A、MOV AH,BL
    • B、MOV DS,AX
    • C、MOV CL,DX
    • D、MOV SI,90

    正确答案:C

  • 第21题:

    指出MOV CS,AX指令的错误原因。


    正确答案:CS值不能由程序员编程改变。

  • 第22题:

    问答题
    判断下列指令是否正确。若不正确,指出错误原因。  (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是正确的。
    解析: 暂无解析

  • 第23题:

    问答题
    说明下列指令中不合法的原因。 (1)MOV 64H, CL  (2)MOV CL, 100H  (3)MOV CL, 256  (4)MOV SS, 6180H  (5)MOV CS, WORD PTR[BX] (6)MOV DS, SS  (7)XCHG AL, 40H (8)XCHG ES, AX  (9)IN 160H, AL  (10)CMP [SI], [BX] (11)MOV DS, 1000H  (12)POP CS

    正确答案: (1)错在立即数64H作目标操作数。
    (2)和(3)错在目标操作数均超过了字节范围。
    (4)错在立即数直接传送给段寄存器。
    (5)错在把存储器操作数作数送CS, 这可能引起系统运行紊乱。
    (6)错在两个段寄存器之间直接传送。
    (7)错在用立即数作交换指令的操作数。
    (8)错在用段寄存器作交换指令的操作数。
    (9)错在当端口地址超过FFH时还在用直接寻址端口号。
    (10)错在用两个存储器操作数做比较。
    (11)错在将立即数直接传送到CS,必须先传送到某个寄存器,再经过寄存器传送到CS。
    (12)错在将存储器堆栈中的数据直接弹出到CS。
    解析: 暂无解析