第3章汇编语言程序设计基础

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

ADC DX
39. 当一个程序使用 DOS 系统功能调用退出用户程序时,在编写 INT21H 指
令前,应选用的指令是( )。
A. MOV AH,01H
B. MOV AX,4CH
C. MOV AH,4CH
D. RET
40. 下面是六十六进制数 88H 的几种表示形式,错误的表示是( )。
A. 无符号十进制数 136
A. DA1 DB 3,5,7
B. DA1 DB 2,3,5,7
C. DA1 DB 3,5,7,2
D. DA1 DB 3,5,7,3,5,7
25. 下面有语法错误的指令是( )。
A. ADD AL,AH
B. ADD [BX+3],AL
C. ADD AH,[DI]
D. ADD[BP+2],DA1(DA1 是变量名)
指令后应选用的指令是( )。
A. JNBE NEXT
B. JNLE NEXT
C. JBE NEXT D. JLE NEXT
2
13. 要使串处理从低地指向高地址进行,应把标志位置为( )。
A. TF=1
B. TF=0
C. DF=1
D. DF=0
14. 使状态标志位 CF 清零的错误指令是( )。
A. OR AX,AX B. SUB AX,AX C. MOV CF,0 D. CLC
A.表示结果中含 1 的个数为偶数 B.表示结果中含 1 的个数为奇数 C.
表示该数为偶数
D.表示结果中底 8 位含 1 的个数为
偶数
43. 完成将累加器 AL 清零,并使进位标志 CF 清零,下面错误的指令是( )。
A. MOV AL,00H
B. AND AL,00H
C. XOR ALL,AL
D. SUB AL,AL
D. END 语句在汇编后要产生机器码
48. 下面的数据传送指令中,错误的操作是( )。
A. MOV SS:[BX+DI],1000H
B. MOV DX,1000H
C. MOV WORD PTR[BX],1000H
A. SUB AX,AX
B. XOR AX,AX
C. OR AX,00H
D. AND AX,00H
36. 设 DS=5788H,偏移地址为 94H,该字节的物理地址是( )。
A. 57974H B. 57914H
C. 5883H
D. 58ECH
37. 如 AX=1000H
NEG AX
NEG AX
上述两条指令执行后,AX 的值为( )。
B. NOT AL
C. INC AL D. DEG AL
3
29. 在条件转移中指令中,结果为负数则转移的是( )。
A. JNS
B. JZ
C. JS
D. JP
30. 下面的 XCHG 指令中,语法正确的是( )。
A. XCHG AL,DS
B. XCHG BL,[BX]
C. XCHG AL,0FH
D. XCHG BUF1,BUF2
3.汇编语言程序设计基础
(1)概述; (2)顺序结构程序; (3)分支结构程序;
1
(4)循环结构程序; (5)子程序; (6)DOS 系统功能调用。 要求掌握: ·正确领会和识别顺序结构程序、分支结构程序、循环结构程序和子程序的 结构特点; ·读懂教材中的 9 个程序举例; ·DOS 系统功能调用——1 号,9 号和 10(0A)号功能调用。
2. 汇编语言的基本语法
(1)汇编语言程序格式 领会汇编语言源程序的两个组成特点:分段结构和语句行。 (2)常量、标识符合表达式 汇编语言程序的常量有数字常量、字符常量和符号常量。能正确掌握三种常 量的表示方法。 正确掌握标识符的定义及规则。 正确识别指令中表达式的含义。 (3)指示性语句 对 一 些 基 本 的 指 示 性 语 句 — — SEGMENT/ENDS 、 ORG 、 ASSUME 、 PROC/ENDP、DB、DW、DD、EQU 等必须正确掌握。 (4)指令性语句 必须正确掌握指令性语句中标号、操作数的表示方法和使用方法。 (5)宏指令 正确识别程序中的宏定义、宏名字、宏调用和宏展开。
D. MOV CS,AX
17. 设 BL 中有一无符号数,实现把 BL 中的数除以 2,应选用的指令是( )。
A. SHR BL,1
B. SHL BL,1 C. SAR BL,1 D. SAL BL,1
18. 执行 PUSH AX 指令的正确步骤是( )。
A. 1. SP←SP-1,(SP)←AH
B. 1. (SP)←AH,SP←SP-1
2. SP←SP-1,(SP)←AL
2.(SP)←AL,SP←SP-1
C. 1. SP←SP+1,(SP)←AH
D. 1. (SP)←AH,SP←SP+1
2. SP←SP+1,(SP)←AL
2. (SP)←AL,SP←SP+1
19. CF=1 时转移到目标地址的条件转移指令是( )。
A. JNC
B. JC
A. CMP AX, OP1
B. CMP BX,OP2
C. CMP OP1,OP2
D. CMP OP1,0FFH
9. 在指令 AND DX,BX AND 0FBC0H 中出现两个 AND,正确的解释是( )。
A. 均是逻辑运算符
B. 均是指令操作码
C. 前者为指令操作码,后者为逻辑运算符
D. 两个 AND 操作码均在程序执行时得出运算结果
B. 带符号十进制—120
C. 压缩型 BCD 码十进制数 88
D. 8 位二进制数—8 的补码表示
41. 指令指针寄存器是( )。
A. IP
B. SP
C. BP
D. PSW
4
42. 当执行指令 ADD AX,BX 后,若 AX 的内容为 2BA0H 时,设置的奇偶标志
位 PF=1 下面叙述中正确的是( )。
3.2 重点难点分析
1. 8086 指令系统
(1)8086 指令的寻址方式 所谓指令的寻址方式是指在指令中操作数的表示方式。 8086 的寻址方式有立即数寻址、寄存器寻址、存储器寻址、串操作寻址、 外设 I/O 端口寻址以及程序转移操作寻址。其中变化最多的是存储器寻址,这种 方式又分为直接寻址、寄存器间接寻址、基址寻址、变址寻址以及基址变址寻址。 要求掌握这些寻址方式的特点,能识别操作数的寻址方式。 (2)8086 指令解析 重点是: 1 编程时能正确使用下述指令。 MOV、PUSH、POP、LEA、ADD、ADC、SUB、SBB、CMP、AND、OR、 NOT、XOR、TEST、SHL、SHR、SAL、SAR、ROL、ROR、RAL、RAR、JMP、 JZ(JE)、LOOP 等条件转移指令。 2 读程序是能正确识别下述指令。 XCHG、XLAT、NEG、MUL、DIV、MOVSB、CMPSB、REP、JA、JB、JG、 JL、JAE、JNB、HLT、NOP 等指令。 难点是:LEA、CMP、TEST、XLAT、NEG、MUL、DIV、MOVSB、CMPS、 REP、LOOP 等指令。
3.3 同步练习及参考解答
一、单项选择题
1.下列四个寄存器中,8 位寄存器是( )。
A. DL
B. AX
C. BX
D. CX
2.在程序运行过程中,确定下一条指令的物理地址的计算表达式是( )。
A. CS×16﹢IP B. DS×16﹢DI C. SS×16﹢SP D. ES×16﹢SI
3. 设 BL=05H,要使结果为 BL=0AH,应执行指令为( )。
A. 1001H
B. 1002H
C. 1000H
D. 0F000H
38. 下列程序段其功能是对 32 位数求补,32 位数已在 DX:AX 中,正确的程
序段是( )。
A. NEG AX
B. NEG AX
C. NOT DX D. NOT AX
NEG DX
NOT DX
NOT AX
NEG DX
ADD AX,1
A. ES
B. CS
C. DS
D. SS
34 . 设 内 存 单 元 ( 10FF0H ) =10H,(10FF1H)=20H,(10FF2H)=30H, 如 从 地 址
10FF1H 中取出一个字的内容是 ( )。
A. 1020H
B. 3020H
C. 2030H D. 2010H
35. 完成将累加器 AX 清零,下面错误的指令是( )。
C. JZ
D.JS
20. 在执行 NEG 指令时,对标志位 CF 有影响,其影响的规则是( )。
A. 对正数求补时,CF=0
B. 对负数求补时,CF=0
C. 对非零数求补时,CF=1
D. 对零数求补时,CF=1
21. 算术右移 SAR 和逻辑左移 SHR 两条指令执行后结果完全相同的情况是
( )。
A. 目的操作数最高位为 0
26. 完成对 DX 的有符号数除以 2 的指令是( )。
A. IDIV 2
B.SAR DX,1
C. ROR DX,1 D. RCR DX,1
27. 十进位位置 1 的指令是( )
A. CLC
B. CMC
C. STC
D. NOP
28. 设 AL=—15,要使 AL=15 应执行的指令是( )。
A. NEG AL
B. 目的操作数最高位为 1
C. 目的操作数为任意情况
D. 无论什么情况都不可能相同
22. 指令的操作数中,允许出现表达式,例如 BUF1 与 BUF2 均为变量名,
下面指令中语法正确的是( )。
A. MOV AX,BUF1+BUF2
B. MOV AX,BUF1/BUF2
C. MOV AX,BUF1+ES:BUF2
A. NOT BL
B. AND BL,0FH
C. XOR BL,OFH
D. OR BL,OFH
4.下面指令中,影响或修改标志位的指令是( )。
A. PUSHF
B. POPF
C. JNLE
D. LOOPZ
5. 执行十进制调整指令 DAA,DAS 之前,必须把结果存放在( )。
A. DL 中
B. CL 中
15. 设 SP=1110H,执行 PUSH AX 指令后,SP 的内容为( )。
A. SP=1112H B. SP=110EH
C. SP=1111H D. SP=110FH
16. 汇编源程序出现语法错误的指令有( )。
A. MOV [BX+SI],AL
B. MOV AX,[BP+DI]
C. MOV DS,AX
10. 由数据定义伪指令 DB 16 DUP(0,2 DUP (1))所定义的数据单元中,有
数据 0100H 的字单元个数是( )。
A. 15
B. 16
C. 0
D. 32
11. 命令“ENDP”告诉汇编程序( )。
A. 宏定义结束 B. 过程定义结束 C. 段定义结束
D. 过
程运行结束
12. AX, BX 中都是无符号数,如 AX>BX 时,转至 NEXT 处。在 CMP AX,BX
C. BL 中
D. AL 中
6. 存放一条指令的存储单元的符号地址称( )。
A. 标号
B. 变量
C. 偏移量
D. 类型
7. 变量的类型属性有多种,下面 4 种类型中错误的是( )。
A. 字节型
B. 字型
C. 字符型
D. 双字型
8. 假设 OP1、OP2 是已经用 DB 定义的变量,下面哪条指令是错误的( )。
D. MOV AX,BUF2-BUF1
23. 下面指令中,操作数的寻址方式为寄存器间接寻址的指令是( )。
A. INC WORD PTR [BX+SI]
B. INC CX,[SI+COUNT]
C. NEG BYTE PTR [BX]
D. ADD AX,BX
24. 语句 DA1 DB2 DUP(3,5,7)汇编后,该语句可等同于的语句是( )。
46. 下面指令中,合理而有意义的指令是( )。
A. REP LODSB
B. REP SCASB
C. REP CMPSB
D. REP MOVSB
47. 在汇编语言程序中,对 END 语句叙述正确的是( )。
A. END 语句是一可执行语句
B. END 语句表示程序执行到此结束
C. END 语句表示源程序到此结束
44. 下列指令执行后总是使 CF=0,CF=0 的是( )。
A. AND
B. NEG
C. NOT
D. INC
45. 在串操作指令前使用重复前缀指令 REPE ,终止串的重复操作条件是
( )。
A. ห้องสมุดไป่ตู้X=0,且 ZF=0
B. CX=0, 且 ZF=1
C. CX=0,或 ZF=0
D. CX=0,或 ZF=1
31. 一条指令中目的操作数不允许使用的寻址方式是( )。
A. 寄存器寻址
B. 立即数寻址
C. 变址寻址
D. 寄存器间接寻址
32. 设 SP=1FFEH,执行下列指令后,SP 寄存器的值是( )。

POPF
PUSH AX

A. 2000H
B. 2002H
C. 1FFCH D. 1FFEH
33. 在下列段寄存器中,代码段寄存器是( )。
相关文档
最新文档