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

题目

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

参考答案和解析
正确答案:错,比较指令的两个操作数不能同时为存储器操作数
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

下列指令执行后对源和目的操作数均无影响的是()。

  • A、MOV [BX+2],AX
  • B、SUB AX,2467H
  • C、SBB [SI],BX
  • D、CMP AX,BX

正确答案:D

第2题:

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

第3题:

判断AX和BX中两数是否相等的方法可以采用指令

A.TEST AX,BX

B.CMP AX,BX

C.AND AX,BX

D.SUB AX,BX

E.XOR AX, BX


正确答案:BDE

第4题:

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


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

第5题:

判断指令是否正确:MULAX,BX


正确答案:错误

第6题:

下面指令中,可以将BX寄存器清0的指令是()。

  • A、CMP BX,BX
  • B、XOR BX,BX
  • C、MOV BX,0
  • D、MOV BX,1EQ0

正确答案:B,C,D

第7题:

试分别指出下列各指令语句的语法是否有错,如有错,指明是什么错误。 SHR [BX][DI],3


正确答案: 移位数大于1时,应用CL

第8题:

假设AX和BX寄存器中存放的是有符号数,为了判断AX寄存器中的数据是否大于BX寄存器中的数据,应采用下面( )指令序列(注:label为标号)。

A.SUB AX,BX JC label

B.SUB AX,BX JNC lable

C.CMP AX,BX JA lable

D.CMP AX,BX JG label


正确答案:D

第9题:

已知数据和符号定义 A1 DB ? A2 DB 8 K1 EQU 100 判断下列指令的正误,并说明错误指令的原因。 (1)MOV K1,AX (2)MOV A2,AH (3)CMP A1,A2 (4)MOV BX,K1 MOV[BX],DX (5)K1EQU 200


正确答案: (1)错误。K1是符号,在此处相当于立即数100,故不能做目的操作数。
(2)正确。
(3)错误。A1、A2都是字节变量,相当于两个存储器单元,故不能同时出现在一条指令中直接进行比较。
(4)正确。
(5)错误。用EQU定义的符号不能重新赋值,除非已用PURGE解除了原值。

第10题:

判断指令是否正确:MOV DI, OFFSET[BX+DI]


正确答案:正确