《汇编语言程序设计》考纲、试题、答案
汇编语言程序设计题目以及答案
一、单项选择题(每小题1分,共20分)
1、设DS=8225H,DI=3942H,指令NEG BYTE PTR[DI]操作数的物理地址是(A)
A、85B92H
B、86192H
C、BB690H
D、12169H
2、下列寄存器组中在段内寻址时可以提供偏移地址的寄存器组是(B)
A、AX,BX,CX,DX
B、BX,BP,SI,DI
C、SP,IP,BP,DX
D、CS,DS,ES,SS
3、循环指令LOOPNZ终止循环的条件是(B)。
A、CX=0,且ZF=0
B、CX=0,或ZF=1
C、CX10,且ZF=0
D、CX10,或ZF=1
4、对寄存器AX的内容乘以4的正确指令序列是(B)。
A、SHR AX,1 /SHR AX,1
B、SHL AX,1/ SHL,AX,1
C、ROL AX,1 /ROL AX,1
D、RCR AX,1/ RCR AX,1
5、执行INC指令除对SF、ZF有影响外,还要影响的标志位是(A)。
A、OF,AF,PF
B、OF,AF,CF
C、OF,PF,CF
D、AF,PF,CF
6、设DH=10H,执行NEG DH指令后,正确的结果是(D)。
A、DH=10H CF=1
B、DH=0F0H CF=0
C、DH=10H CF=0
D、DH=0F0H CF=1
7、下列传送指令中有语法错误的是(A)。
A、MOV CS,AX
B、MOV DS,AX
C、MOV SS,AX
D、MOV ES,AX
8、下面指令执行后,改变AL寄存器内容的指令是(D)。
A、TEST AL,02H
B、OR AL,AL
C、CMP AL,BL
D、AND AL,BL
汇编语言程序设计练习题及参考答案
一、单项选择题
从每小题的四个备选答案中,选出一个正确答案,并将正确答案的番号填人括号内。
1.用来存放下一条将要执行的指令地址的寄存器是 (B )
A.SP B.IP C.BP D.CS
2.要使串处理从低地址向高地址进行,应把标志位置为 (D )
A.IF=1 B.TF=0
C.DF=1 D.DF=0
3.使状态标志位CF清零的错误指令是 (C )
A.OR AX,AX B.SUB AX,AX
C.MOV CF,0 D.CLC
4.设SP=1110H,执行PUSH AX指令后,SP的内容为 (B )
A.SP=1112H B.SP=110EH
C.SP=1111H D.SP=110FH
5.汇编源程序出现语法错误的指令有 (D )
A.MOV [BX+SI],AL B. MOV AX,[BP+DI]
C.MOV DS,AX D. MOV CS,AX
6.下列串操作指令中,必须同时指明源串和目的串地址的指令是 (D )
A.STOSW B.LODSW
C.SCASW D.CMPSW
7.设BL中有一无符号数,实现把BL中的数乘以2,应选用的指令是 (B )
A.SHR BL,1 B.SHL BL,1
C.SAR BL,1 D.RCR BL,1
8.执行PUSH AX指令的正确步骤是 (A )
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
汇编语言程序的设计试卷与答案
汇编语言程序设计试卷
一、单项选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干后的括号内,每小题1分,共20分)
1.十六进制数88H,可表示成下面几种形式,请找出错误的表示()。
① 无符号十进制数136
② 带符号十进制数-120
③ 压缩型BCD码十进制数88
④ 8位二进制数-8的补码表示
2.指令指针寄存器是()。
① IP
② SP
③ BP
④ PSW
3.当执行指令ADD AX,BX后,若AX的内容为2BA0H,
设置的奇偶标志位PF=1,下面的叙述正确的是()。
① 表示结果中含1的个数为偶数
② 表示结果中含1的个数为奇数
③ 表示该数为偶数
④ 表示结果中低八位含1的个数为偶数
4.完成将累加器AL清零,并使进位标志CF清零,
下面错误的指令是()。
① MOV AL,00H
② AND AL,00H
③ XOR AL,AL
④ SUB AL,AL
5.下列指令执行后总是使CF=0,OF=0的是()。
① AND
② NEG
③ NOT
④ INC
6.完成同指令XCHG AX,BX相同功能的指令或指令序列是()。
① MOV AX,BX
② MOV BX,AX
③ PUSH AX
POP BX
④ MOV CX,AX
MOV AX,BX
MOV BX,CX
7.设AH=0,AL=06H,BL=09H,执行指令
ADD AL,BL
AAA
之后,其结果应是()。
① AH=01,AL=05
② AH=1 AL=15
③ AH=0 AL=0FH
④ AH=0 AL=05
8.设AL=0B4H,BL=11H,指令“MUL BL”和指令“IMUL BL”分别执行后OF,CF的值为
汇编语言程序设计试题和答案
《汇编语言程序设计》试题
专业姓名成绩
一、单项选择题(每1分,共15分).
1将下列二进制数0111,1111,1111 转换为16进制数和10进制数是()
A.07FFH 3021D
B. 6FEH 1021D
C. 07FFH 2012D
D. 07FFH 2047D
2. 在1BM Pc机的IN和OUT 指令中,I/o端口号通常是由Dx寄存器来提供的,但有时也可以在
指令中用一个字节来表示端口号。试问可以直接由指令指定的I/o端口号有多少个?( )
A. 127D
B.255D
C. 256D
D.128D
3. 设MYDAT是一个字变量,下列指令中,错误的是()
A.MOV BX,10100B
B.MOV DS,AX
C.ADD BX,[10100H]
D.MOV BX,MYDAT[SI]
4.设有关寄存器及存储单元的内容如下:(DS)=2000H,(BX)=0100H,(SI)=0002H,
(20100)=12H,(20102)=56H,(20103)=78H,(21200)=2AH,(21201)=4CH,(20202)=0B7H,(21203)=65H,试指出:MOV AX,1100h[BX]指令执行后,AX寄存器内是()
A.5678H
B.4C2AH
C.2A4CH
D.7856H
5.一台微型计算机的字长为16位,如果采用字节编址,那么它可以访问的最大存储空间是多少字节
( ),试用16进制数表示该机的地址范围()
A.1M 0~FFFFFH
B.64K 0~FFFFH
C.128K 0~FFFFH
D.128K –FFH~FFH
汇编语言程序设计试题参考答案
汇编语言程序设计参考答案
A卷
一、单项选择题(本大题共8小题,每小题2分,共16分)
1.C
2.B
3.B
4.A
5.C
6.A
7.A
8.C
9.D 10.B
二、名词解释(本大题共5小题,每小题4分,共20分)
11.微处理器:也成中央处理器(CPU),是微型计算机的核心部件,包含运算器、控制器、寄存器组及总线接口等,负责对计算机系统各部件进行统一的协调和控制。
12.寻址方式:就是寻找操作数或操作数地址的方式,根据寻址方式可方便地访问各类操作数。
13.伪指令:是发送给汇编程序的命令,在汇编过程中由汇编程序进行处理,如定义数据、分配存储区、定义段及定义过程等。
14.中断源:指能引起中断的外部设备或内部原因。
15.汇编语言:是一种面向CPU指令系统的程序设计语言,采用指令助记符来表示操作码和操作数,用符号地址表示操作数地址。
三、简答题(本大题共4小题,每小题5分,共20分)
16.微型计算机系统软件的主要特点是什么?
计算机系统软件的主要特点是简化计算机操作,支持应用软件的运行并提供相关服务,通常包括操作系统、语言处理程序等。
17.什么是逻辑地址?他由哪两部分组成?
计算机存储器中给每个逻辑段编址的地址称逻辑地址。逻辑地址是在程序中使用的地址,他由段地址和偏移地址两部分构成。
18.一个完整的汇编源程序由那些逻辑段组成?各逻辑段的主要作用是什
么?
一般情况下汇编语言源程序应该由以下3个逻辑段组成:
①数据段:用来在内存中建立一个适当容量的工作区,以存放常数,
变量等程序需要对其进行操作的数据;
②堆栈段:用来在内存中建立一个适当容量的堆栈区,以便在中断、
《汇编语言程序设计》课程知识 复习 学习材料 试题与参考答案
《汇编语言程序设计》
课程知识复习学习材料试题与参考答案
一、单选题
1.为了使MOV AX,VAR指令执行后,AX寄存器中的内容为4142H,下面哪一条数据定义会产生不正确的结果?(C)
A.VAR DW 4142H
B.VAR DW 16706
C.VAR DB 42H,41H
D.VAR DW ‘AB’
2.关于8086/8088微机系列,下列说法哪个是正确的(D)
A.一个存储单元由16个二进制位组成,简称字。
B.当存储一个字数据时,低字节放高地址位,高字节放低地址位。
C.在内存中,可以无限分配段,且段的大小不受限制。
D.段与段之间可以邻接,也可以重叠。
3.宏指令库以(C)格式存放在磁盘上。
A.可执行代码
B.目标代码
C.源代码
4.计算机处理问题中会碰到大量的字符.符号,对此必须采用统一的二进制编码。目前,微机中普遍采用的是( D)码。
A.BCD码
B.二进制码
C.十六进制码
D.ASCII
码
5.运算器能够完成(C)运算。
A.算术运算
B.逻辑运算
C.算术运算和逻辑运算
D.加减运算
6.十六进制数88H,可表示成下面几种形式,请找出错误的表示(D)
A.无符号十进制数136
B.带符号十进制数-120
C.压缩型BCD十进制数88
D.8位二进制数-8的补码表示
7.用MOV指令将十进制数89以非压缩BCD码格式送入AX,可使用的指令是(B )
A.MOV AX,89
B.MOV AX,0809H
C.MOV AX,89H
D.MOV AX,0809
8.在执行下列指令时,需要使用段寄存器DS的指令是(D)
A.STOSW
汇编语言程序设计试题和答案
《汇编语言程序设计》试题
专业姓名成绩
一、单项选择题(每1分,共15分).
1将下列二进制数0111,1111,1111 转换为16进制数和10进制数是()
A.07FFH 3021D
B. 6FEH 1021D
C. 07FFH 2012D
D. 07FFH 2047D
2. 在1BM Pc机的IN和OUT 指令中,I/o端口号通常是由Dx寄存器来提供的,但有时也可以在
指令中用一个字节来表示端口号。试问可以直接由指令指定的I/o端口号有多少个?( )
A. 127D
B.255D
C. 256D
D.128D
3. 设MYDAT是一个字变量,下列指令中,错误的是()
A.MOV BX,10100B
B.MOV DS,AX
C.ADD BX,[10100H]
D.MOV BX,MYDAT[SI]
4.设有关寄存器及存储单元的内容如下:(DS)=2000H,(BX)=0100H,(SI)=0002H,
(20100)=12H,(20102)=56H,(20103)=78H,(21200)=2AH,(21201)=4CH,(20202)=0B7H,(21203)=65H,试指出:MOV AX,1100h[BX]指令执行后,AX寄存器内是()
A.5678H
B.4C2AH
C.2A4CH
D.7856H
5.一台微型计算机的字长为16位,如果采用字节编址,那么它可以访问的最大存储空间是多少字节
( ),试用16进制数表示该机的地址范围()
A.1M 0~FFFFFH
B.64K 0~FFFFH
C.128K 0~FFFFH
D.128K –FFH~FFH
汇编语言程序设计试卷及答案
汇编语言程序设计试卷及答案
一、单项选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干后的括号内,每小题2分,共30分)
1.IBM PC微机中,有符号数是用()表示的。
(A) 原码 -(B) 反码
(C) BCD (D) 补码
2.堆栈指示寄存器是()。
(A) IP -(B) SP
(C) BP (D) PSW
3.当执行指令ADD AX,BX后,若AX的内容为2BA0H,设置的奇偶标志位PF=1,下面的叙述正确的是()。
(A) 表示结果中含1的个数为偶数
(B) 表示结果中含1的个数为奇数
(C) 表示该数为偶数
-(D) 表示结果中低八位含1的个数为偶数
4.完成将累加器AL清零,并使进位标志CF清零,下面错误的指令是()。
-(A) MOV AL,00H (B) AND AL,00H
(C) XOR AL,AL (D) SUB AL,AL
5.下列指令执行后总是使CF=0,OF=0的是()。
-(A) AND (B) NEG
(C) NOT (D) INC
6.完成同指令XCHG AX,BX相同功能的指令或指令序列是()。
(A) MOV AX,BX (B) MOV BX,AX
(C) PUSH AX POP BX
-(D) MOV CX,AX MOV AX,BX MOV BX,CX
7.执行指令MOV AL,0FEH
ADD AL,AL
ADC AL, AL
之后,其结果应是()。
(A) AL=0F8H CF=1 (B) AL=0F8H CF=0
(C) AL= 0F9H CF=0 -(D) AL=0F9H CF=1
汇编语言程序设计考试题型说明(老师上课讲的题)
汇编语言程序设计考试题型说明
一、填空题(20%)
二、选择题(15% )
三、是非判断题(10%)
四、简答题(10%)
五、指出语句错误(8%)
六、程序分析题(12%)
七、程序填空题(10%)
八、程序设计题(15%)
•汇编语言题型讲解
一、填空题
例1.任何变量都有段地址、偏移地址、类型三种属性。
例2.“VAR DB 5 DUP(8,2 DUP(5))”语句汇编应分配15个字节单元。
例3. 请用一条指令实现如下操作:
(1)将AX中划‘X’的位清0
(2)将BL寄存器的低四位取反:X O R B L,0F H。
例 4.假设存储器中各字节单元的内容是:(06925H)=12H,(06926H)=45H,(06927H)=78H,那么字单元(06925H)= 4512H ,字单元(06926H)= 7845H。
例5.语句DA2 DW ‘AB’ 汇编后在DA2字节单元中存放42H,在DA2+1字节单元中存放41H。
例6.若DS=0F3EH,SI=2000H,COUNT=0A8H,指令MOV AX,[SI+COUNT]中,源操作数的有效地址EA为20A8H,其物理地址为11488H。
例7.R E P、R E P Z、R E P N Z。
例8. DB指令以字节为单位分配存贮;DW指令以字为单位分配存贮。故如下数据定义:
V1 DB 4 DUP (2), 2
COUNT EQU 10
V2 DW COUNT DUP(?)
为变量V1分配5个字节存贮区;为变量V2分配20个字节存贮区。
例9.在执行串处理指令时,为了使地址自动增量,应执行指令:C L D,该指令使得方向标志位
汇编语言程序设计题目以及答案
一、单项选择题(每小题1分,共20分)
1、设DS=8225H,DI=3942H,指令NEG BYTE PTR[DI]操作数的物理地址是(A)
A、85B92H
B、86192H
C、BB690H
D、12169H
2、下列寄存器组中在段内寻址时可以提供偏移地址的寄存器组是(B)
A、AX,BX,CX,DX
B、BX,BP,SI,DI
C、SP,IP,BP,DX
D、CS,DS,ES,SS
3、循环指令LOOPNZ终止循环的条件是(B)。
A、CX=0,且ZF=0
B、CX=0,或ZF=1
C、CX10,且ZF=0
D、CX10,或ZF=1
4、对寄存器AX的内容乘以4的正确指令序列是(B)。
A、SHR AX,1 /SHR AX,1
B、SHL AX,1/ SHL,AX,1
C、ROL AX,1 /ROL AX,1
D、RCR AX,1/ RCR AX,1
5、执行INC指令除对SF、ZF有影响外,还要影响的标志位是(A)。
A、OF,AF,PF
B、OF,AF,CF
C、OF,PF,CF
D、AF,PF,CF
6、设DH=10H,执行NEG DH指令后,正确的结果是(D)。
A、DH=10H CF=1
B、DH=0F0H CF=0
C、DH=10H CF=0
D、DH=0F0H CF=1
7、下列传送指令中有语法错误的是(A)。
A、MOV CS,AX
B、MOV DS,AX
C、MOV SS,AX
D、MOV ES,AX
8、下面指令执行后,改变AL寄存器内容的指令是(D)。
A、TEST AL,02H
B、OR AL,AL
C、CMP AL,BL
D、AND AL,BL
汇编语言程序设计习题及答案
汇编语言程序设计习题及答案
汇编语言程序设计习题及答案
汇编语言是一种底层的计算机语言,它直接操作计算机的硬件资源。虽然在现
代计算机编程中,高级语言如C、Java等更为常见,但了解汇编语言的基本原
理和编程技巧对于理解计算机底层工作原理和进行性能优化非常重要。本文将
介绍一些汇编语言程序设计的习题及其答案,帮助读者巩固和提升汇编语言编
程能力。
一、基础习题
1. 编写一个汇编程序,将存储器中的某个字节的值加1,并将结果存回原位置。答案:
```assembly
MOV AL, [地址]
INC AL
MOV [地址], AL
```
2. 编写一个汇编程序,计算存储器中一个数组的和,并将结果存放在指定的寄
存器中。
答案:
```assembly
MOV CX, 数组长度
MOV BX, 数组首地址
MOV AX, 0
LOOP_START:
ADD AX, [BX]
ADD BX, 2
LOOP LOOP_START
```
二、进阶习题
1. 编写一个汇编程序,实现字符串的逆序输出。答案:
```assembly
MOV SI, 字符串首地址
MOV DI, 字符串尾地址
MOV CX, 字符串长度
DEC CX
REVERSE:
MOV AL, [SI]
MOV AH, [DI]
MOV [DI], AL
MOV [SI], AH
INC SI
DEC DI
LOOP REVERSE
```
2. 编写一个汇编程序,实现两个16位无符号整数的相乘,并将结果存放在指定的寄存器中。
答案:
```assembly
MOV AX, 第一个数
MOV BX, 第二个数
MUL BX
汇编语言程序设计试题及答案
《汇编语言程序设计》试题
专业姓名成绩
一、单项选择题(每1分,共15分).
1将下列二进制数0111,1111,1111 转换为16进制数和10进制数是()
A.07FFH 3021D
B. 6FEH 1021D
C. 07FFH 2012D
D. 07FFH 2047D
2. 在1BM Pc机的IN和OUT 指令中,I/o端口号通常是由Dx寄存器来提供的,但有时也可以在
指令中用一个字节来表示端口号。试问可以直接由指令指定的I/o端口号有多少个?( )
A. 127D
B.255D
C. 256D
D.128D
3. 设MYDAT是一个字变量,下列指令中,错误的是()
A.MOV BX,10100B
B.MOV DS,AX
C.ADD BX,[10100H]
D.MOV BX,MYDAT[SI]
4.设有关寄存器及存储单元的内容如下:(DS)=2000H,(BX)=0100H,(SI)=0002H,
(20100)=12H,(20102)=56H,(20103)=78H,(21200)=2AH,(21201)=4CH,(20202)=0B7H,(21203)=65H,试指出:MOV AX,1100h[BX]指令执行后,AX寄存器内是()
A.5678H
B.4C2AH
C.2A4CH
D.7856H
5.一台微型计算机的字长为16位,如果采用字节编址,那么它可以访问的最大存储空间是多少字节
( ),试用16进制数表示该机的地址范围()
A.1M 0~FFFFFH
B.64K 0~FFFFH
C.128K 0~FFFFH
D.128K –FFH~FFH
《汇编语言程序设计》练习题参考答案.
《汇编语言程序设计》练习题一参考答案
一、简答题
1.
2.答:字节单元:(30022H) = AB H,(30024H) = EF H
字单元:(30021H) = AB34 H,(30022H) = CDAB H。
3.答:
(1)MOV BX, OFFSET BLOCK + 0AH
MOV DX, [BX]
(2)MOV BX, 0AH
MOV DX, BLOCK[BX]
(3)MOV BX, OFFSET BLOCK
MOV SI, 0AH
MOV DX, [BX][SI]
4.答:
BYTE_VAR 42 59 54 45 0C EE 00 ?? - 01 02 01 02 ?? 00 ?? 01
02 01 02 ?? 00 ?? 01 02 - 01 02 ??
WORD_VAR 00 00 01 00 02 00 00 00 - 01 00 02 00 00 00 01 00
02 00 00 00 01 00 02 00 - 00 00 01 00 02 00 ?? ??
FB FF 59 42 45 54 56 02 -
5.答:宏展开:
2 DATA0 DW ?
2 DATA1 DW ?
6.答:可以用来指示存储器地址的寄存器有BX、SP、BP、DI、SI、IP、CS、DS、
7.答:该程序的第一个字的物理地址是0AAA40H。
8.答:
(1) 064DH
(2) 0691H
(3) 05ECH
9.答:
(1)MOV AX, [ BX+0CH ]
MOV ZERO, AX
(2)MOV AX, ARRAY[BX]
MOV ZERO, AX
《汇编语言程序设计》必考试题及答案
《汇编语言程序设计》必考试题及答案
一、选择题
1. 汇编语言属于 ____。
A. 高级语言
B. 机器语言
C. 低级语言
D. 自然语言
答案:C. 低级语言
2. 在汇编语言中,寄存器eax主要用于 ____。
A. 存储返回值
B. 存储函数参数
C. 存储局部变量
D. 存储全局变量
答案:A. 存储返回值
3. 汇编语言中,jmp指令用于 ____。
A. 设置循环条件
B. 调用子程序
C. 跳转到指定地址
D. 返回主程序
答案:C. 跳转到指定地址
二、简答题
1. 请简述汇编语言与高级语言的区别。
汇编语言是一种低级语言,使用助记符来代表机器指令,每条汇编
指令对应一条机器指令。而高级语言更加抽象,采用更接近人类自然
语言的表达方式,通过编译器将高级语言编写的程序转换为机器语言。
2. 请列举汇编语言常用的寄存器及其作用。
汇编语言常用的寄存器包括:
- eax:主要用于存储返回值。
- ebx、ecx、edx:通用寄存器,用于暂存计算结果。
- esi、edi:源操作数寄存器和目的操作数寄存器,用于存储数据传
输时的源地址和目的地址。
- ebp、esp:用于管理函数调用过程中的栈帧。
- eip:指令指针寄存器,存储下一条将要执行的机器指令的地址。
三、编程题
请编写汇编语言程序,实现从键盘输入两个数,并将其相加后输出的功能。
```assembly
section .data
prompt db '请输入两个数,以空格分隔:', 0
result db '两数相加的结果为:%d', 0
section .bss
num1 resb 4
【汇编语言程序设计】试题及答案合集
汇编语言程序设计试题及答案
1.对于有符号的数来说,下列哪个值最大(D)
A:0F8H
B:11010011B
C:82 D:123Q
2.下列有关汇编语言中标号的命名规则中,错误的是(D)
A:通常由字母打头的字符、数字串组成
B:标号长度不能超过31个字符
C:?和$不能单独作为标号
D:.号不可位于标号首
3.8088/8086存储器分段,每个段不超过(D )
A.64K个字
B.32K个字节
C.1兆个字节
D.64K个字节
4.寻址指令MOV CX, [BX + DI + 20]使用的是哪一种寻址方式(B)A:寄存器寻址B:相对基址变址寻址
C:变址寻址D:基址变址寻址
5.若AX= - 15要得到AX=15应执行的指令是(A )
A.NEG AX
B.NOT AX
C.INC AX
D.DEC AX
6.8086/8088系统执行传送指令MOV时( A)
A.不影响标志位
B.影响DF方向标志
C.影响SF符号标志
D.影响CF进位标志
7.若要求一个操作数中的若干位维持不变,若干位置“1”,可以使用(B)A:NOT B:OR C:AND D:XOR
8.下列指令中段默认为堆栈段的是( C)
A.MOV AX,[BX+SI+10]
B.ADD AX,ES:[SI]
C.SUB [BX],[BP][DI]
D. MOV DX,[1000H]
9.关于8086/8088微机系列,下列说法哪个是正确的(D)
A:一个存储单元由16个二进制位组成,简称字。
B:当存储一个字数据时,低字节放高地址位,高字节放低地址位。
C:在内存空间中,可以无限分配段,且段的大小不受限制。
汇编语言程序设计试卷及答案AB卷
2010—2011学年度第(1)学期期末考试试卷
科 目:汇编语言程序设计 (A )卷
考试形式:闭卷 考试时间: 120 分钟
系别、班级: 姓名: 学号:
一、单项选择题:(本题共20小题,每小题1分,共20分) 1. 设DS=5788H ,偏移地址为94H ,该字节的物理地址是 。
(A) 57974H (B) 57914H (C) 5883H (D) 58ECH 2. IP 指令指针寄存器是属于 。 (A) 通用寄存器 (B) 段寄存器(C) 变址寄存器 (D) 控制寄存器
3. 下面有语法错误的指令是 。
(A) ADD AL,AH
(B) ADD [BX+3],AL (C) ADD AH,[DI]
(D) ADD [BX],DA1(DA1是变量名)
4. 完成对DX 的有符号数除以2的指令是 。
(A) IDIV 2 (B) SAR DX,1 (C) DIV 2 (D) RCR DX,1 5. 使进位位置1的指令是 。 (A) CLC (B) CMC (C) STC
(D) NOP 6. 设AL=-100,要使AL=100应执行的指令是 。
(A)NEG AL (B)NOT AL
(C)INC AL (D)DEC AL
7.在条件转移指令中,结果为负数则转移的指令是。
(A)JNS (B)JZ
(C)JS (D)JC
8.下面的XCHG指令中,语法正确的是。
(A)XCHG AL,DS (B)XCHG BH,[BX]
(C)XCHG AL,OFH (D)XCHG BUF1,BUF2
9.一条指令中目的操作数不允许使用的寻址方式是。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
安徽新华学院成人高等学历教育
《汇编语言程序设计》课程2013年12月期末考试指导
一、考试说明
本课程为闭卷考试,考试时间90分钟,考试题型包括以下题型:
1. 选择题(每题2分,共10分)
2. 填空题(每空1分,共20分)
3. 判断题(正确打√,错误打×,每题2分,共10分)
4. 简答题(每题5分,共15分)
5. 指出下列指令的错误(每题2分,共10分)
6. 程序分析题(每空5分,共25分)
7. 程序设计题(每空1分,共10分)
二、课程知识要点
第一章绪论
1. 汇编程序是将汇编语言源程序翻译成二进制代码程序的语言处理程序,翻译的过程称为汇编。
2. 汇编语言的特点
3. 数据的表示和类型(ASCII码和基本数据类型是重点)
第二章 8086/8088寻址方式和指令系统
1. 8086/8088寄存器组(各种寄存器的名称和功能)
2. 存储器分段和地址的形成(存储单元中存放信息的原则,物理地址的计算方法,逻辑地址的表示方法,有效地址EA)
3. 寻址方式的概念,能够判断寻址方式
4.传输指令
(1)数据传送指令.
MOV 传送字或字节. (掌握课本30页图2.13)
XCHG 交换字或字节.( 至少有一个操作数为寄存器,段寄存器不可作为操作数)
(2)地址传送指令:
LEA 装入有效地址.
例: LEA DX,string ;把偏移地址存到DX.
LDS 传送目标指针,把指针内容装入DS.
例: LDS SI,string ;把段地址:偏移地址存到DS:SI.
LES 传送目标指针,把指针内容装入ES.
例: LES DI,string ;把段地址:偏移地址存到ES:DI.
(3)堆栈操作指令,按照“后进先出”的原则,所有数据的存入和取出都在栈顶进行。
PUSH 把字压入堆栈. SP-2
POP 把字弹出堆栈. SP+2
(4)标志操作指令
LAHF 标志寄存器传送,把标志装入AH.
SAHF 标志寄存器传送,把 AH内容装入标志寄存器.
PUSHF 标志入栈.
POPF 标志出栈.
5.算术运算指令
ADD 加法.
ADC 带进位加法.
INC 加 1.
SUB 减法.
SBB 带借位减法.
DEC 减 1.
NEC 求反(以 0 减之).
CMP 比较.(两操作数作减法,仅修改标志位,不回送结果).
MUL 无符号乘法.
IMUL 有符号数乘法.
以上两条,结果回送AH和AL(字节运算),或DX和AX(字运算)
DIV 无符号除法.
IDIV 整数除法.
以上两条,结果回送:商回送AL,余数回送AH, (字节运算);或商回送AX,余数回送DX, (字运算).
CBW 字节转换为字. (把AL中字节的符号扩展到AH中去)
CWD 字转换为双字. (把AX中的字的符号扩展到DX中去)
6. 逻辑运算指令(按位运算)
AND 与运算.
OR 或运算.
XOR 异或运算.
NOT 取反.
TEST 测试.(两操作数作与运算,仅修改标志位,不回送结果).
6. 移位指令
SHL 逻辑左移.
SAL 算术左移.(=SHL)
SHR 逻辑右移.
SAR 算术右移.
ROL 循环左移.
ROR 循环右移.
RCL 通过进位的循环左移.
RCR 通过进位的循环右移.
移位一次时, 可直接用操作码. 如 SHL AX,1.
移位>1次时, 则由寄存器CL给出移位次数.
如MOV CL,04
SHL AX,CL
7. 程序转移指令
1> 无条件转移指令
JMP 无条件转移指令
2>条件转移指令课本54页表2.3
3>循环控制指令(短转移)
LOOP CX不为零时循环.
LOOPE/LOOPZ CX不为零且标志Z=1时循环.
LOOPNE/LOOPNZ CX 不为零且标志Z=0时循环.
JCXZ CX为零时转移.
第三章汇编语言及其程序设计初步
1. 汇编语言的语句——指令语句和伪指令语句的区别?
2. 常数地址表达式
3. 数据定义语句 DB DW DD
重复操作符DUP
4. 变量和标号的三个属性
5. 析值操作符 OFFSET ,属性操作符PTR
6. 符号定义语句段定义语句 ASSUME语句
7. 一个完整的汇编语言源程序一般包含数据段、堆栈段、代码段。
8. 程序设计基础
(1)顺序程序设计例1,例2
(2)分支程序设计例1,例2
(3)循环程序设计例1,例4
第四章子程序设计和DOS功能调用
1. 过程调用和返回指令 CALL RET
2. 过程定义语句
3. 主程序与子程序间的参数传递方法
第五章输入输出与中断
1. 数据传送方式
2. 中断向量表
三、重点习题
1. 选择题
(1)设SP的初值为1000H,执行指令PUSH AX后SP的值是( C )。
A.0FFFH
B.1001H
C.0FFEH
D.1002H
(2)指令JMP FAR PTR DONE属于(C )。
A.段内转移直接寻址
B.段内转移间接寻址
C.段间转移直接寻址
D.段间转移间接寻址
(3)下面指令执行后,改变AL寄存器内容的指令是( D )。
A.TEST AL,02H
B. OR AL,AL
C. CMP AL,BL
D. AND AL,BL
(4)CBW指令的功能是( B )。
A.把源操作数的符号位扩展到目的操作数中