区分指令MOV A,20H和MOV A,#20H。

题目

区分指令MOV A,20H和MOV A,#20H。

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

下列MOV指令都是错误的,请指出错误原因。

(1)MOV ES, 1234H

(2)MOV AL, 300

(3)MOV [SP], AX

(4)MOV AX, BX+DI

(5)MOV 20H, AH


正确答案:(1)立即数不能直接赋给段寄存器。 (2)立即数300超过8位不能赋给8位寄存器AL。 (3)SP不能作为间接寻址寄存器寻址。 (4)两个寄存器不能相加。 (5)立即数不能作为目标操作数。
(1)立即数不能直接赋给段寄存器。 (2)立即数300超过8位,不能赋给8位寄存器AL。 (3)SP不能作为间接寻址寄存器寻址。 (4)两个寄存器不能相加。 (5)立即数不能作为目标操作数。 解析:本问题主要考查汇编语言的基础知识。在8086的指令系统中,应用通用传送指令时,需要注意以下几点:
传送指令可传送8位数据,也可传送16位数据,具体取决于指令中涉及的寄存器是8位还是16位,也取决于立即数的形式。
传送指令中总是即含源操作数,又含目的操作数,两者之中至少有一个是用寄存器来指出的,这可减少指令长度。因此,一个立即数不能直接送直接寻址的内存单元。交换指令(XCHG)两个操作数都不能是立即数。
传送指令不能在两个内存单元之间直接传送数据。
在传送指令中,寄存器即可以作为源操作数,也可以作为目的操作数,但CS寄存器不能作为目的操作数,换句话说,这个寄存器的值不能随意修改。而IP寄存器即不能作源操作数,也不能作为目的操作数。
用BX、SI、DI来间接寻址时,默认的段寄存器位DS,而用BP来间接寻址时,默认的段寄存器为SS。
8086系统规定,凡是遇到给SS寄存器赋值的传送指令时,系统会自动禁止外部中断,等到本条指令和下条指令执行后,又自动恢复对SS寄存器赋值前的中断开放状态。这样做是为了允许程序员连续用两条指令分别对SS和SP寄存器赋值,同时又防止堆栈空间变动过程中出现中断。了解这点后,就应注意在修改SS和SP的指令之间不要插入其他指令。
除了一些直接影响FLAGS的指令外,一般传送指令不改变标志寄存器的内容。
立即数不能直接送段寄存器DS、ES以及SS,要用通用寄存器或存储单元作桥梁。
因此,指令“MOVES,1234H”的错误在于立即数直接赋给了段寄存器;指令“MOV AL,300”的错误在于立即数300超过8位,不能赋给8位寄存器AL;指令“MOV[SP],AX”的错误在于SP不能作为间接寻址寄存器寻址:指令“MOV AX,BX+DI”的错误在于两个寄存器不能相加;指令“MOV 20H,AH”的错误在于立即数不能作为目标操作数。

第2题:

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

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

正确答案:A

第3题:

若(R1)=30H,(A)=20H,执行指令MOV @R1,A后,(30H)=()。

A.10H

B.20H

C.30H

D.50H


参考答案:B

第4题:

已知(DS)=1500H,(ES)=2500H,(S)=2100H,SI=10H,(BX)=20H,(BP)=60H,请指出MOV AX,[BP]指令的源操作数字段是什么寻址方式?


正确答案:该指令的源操作数是寄存器间接寻址方式

第5题:

说明MOV BX,DATA和MOV BX,OFFSTE DATA指令之间的区别。


正确答案: M.OV  BX, DATA是直接将DATA的值赋给BX寄存器;
M.OV  BX, OFFSTE DATA是将DATA在段内的偏移量赋给BX寄存器。
(注:DATA为变量名,它指内存中的一个数据区的名字,它可以作为指令中的存储器操作数来使用。变量仅对应于数据区中的第一个数据项,若需对数据区中其它数据项进行操作,必须用地址表达式指出哪个数据项是指令中的操作数。)

第6题:

下列指令中,不合法的指令是

A.IN AL,20H

B.OUT 20H,AL

C.MOV 20H,AL

D.ADD AL,20H


正确答案:C

第7题:

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

  • A、SHL AL,1
  • B、MOV AH,BX
  • C、SHR AL,CL
  • D、MOV AL,20H

正确答案:B

第8题:

执行下列程序段后,DATA1单元的值为( ) DATA1 DB 10H,20H DATA2 DB 30H,40H MOV AX,WORD PTR DATA1 CMP AX,WORD PTR DATA2 JA L MOV BX,WORD PTR DATA2 MOV WORD PTR DATA2,AX MOV WORD PTR DATA1,BX L:HLT

A.40H

B.30H

C.20H

D.10H


正确答案:B
解析:在本题中,DATA1中存放的是字节10H,20H。DATA2中存放的是字节30H,40H。执行MOVAX,WORDPTRDATA1后,DATA1的内容转换为字的形式。下一条是把DATA2转换为字后进行比较。JA的作用是两个无符号数比较,高于或不低于不等于转移。在本题中20H30H,所以不转移,继续执行下面的指令,下面的指令的作用是把DATA1的值和DATA2的值换过来,所以DATA1的值是30H。

第9题:

指令MOV R0,20H执行前(R0)=30H,(20H)=38H,执行后(R0)=()。

  • A、20H
  • B、30H
  • C、50H
  • D、38H

正确答案:D

第10题:

下列指令中错误指令是()

  • A、MOV AX,DS
  • B、MOV CS,1500H
  • C、MOV SI,BX
  • D、MOV [3000H],AL
  • E、MOV [DI+32H],[1845H]
  • F、MOV AL,1000H

正确答案:B,E,F

更多相关问题