期末复习题(完整含答案版)

巡山小妖精
880次浏览
2020年08月04日 01:07
最佳经验
本文由作者推荐

杠杆教学设计-教务副主任述职报告


期末复习题(完整含答案版)
一、问答题
1、 写出8086操作数的寻址方式。8086的存储器寻址方式有哪些?
答:操作数的寻址方式有:①立 即(数)寻址。②寄存器寻址。③存储器寻址。存储器
寻址方式有:①立即寻址。②寄存器寻址。③直接 寻址。④寄存器间接。⑤寄存器相对。⑥
基址变址。⑦相对基址变址。
2、 何谓中断向量,何谓中断号?
答:中断向量即中断服务程序的入口地址。中断类型号是系统分配给每个中断源的代号。
3、 试写出由逻辑地址计算物理地址的计算公式。写出8086在存储器寻址下,存储单元的逻辑地
址的表示 形式。
答:PA=段基址*16+偏移量 LA=段基址:偏移量
4、 在内存 物理地址为00002H起的字单元内存放7856H,请用图表示出它们在存储器里存放的情
况。
寄存器
00002H
00003H
00004H
56H
78H
4题图

寄存器
00002H
00003H
00004H
12H
34H

5、 在物理内存地址为00002H起的字单元内存放3412H,请用图表示出它们在存 储器里存放的情
况。
6、 8088的寻址空间有多大?要寻址全部内存空间必须采用什么技术措施?
答:1MB,分段寻址
7、 寄存器间接寻址方式可使用哪些寄存器?
答:在8086中:BXBPSIDI
8、 在分断技术中,寄存器BX和BP默认对应的段寄存器是哪些?
答:BX对应的是DS,BP对应的是SS。
9、 寄存器相对寻址方式中的位移量可以用什么形式表达?
答:位移量=EA—基址—(变址*比例因子)
1 12
5题图


期末复习题(完整含答案版)
10、 微机的内存的最小编址单位是什么?字型数据在内存的中的存放原则是什么?
答:最小编址单位是B,存放原则是先低字节,后高字节。
11、 基址变址寻址方式的可用寄存器有哪些?
答:[BX][SI][BX][DI]
12、 写出相对基址变址寻址方式的偏移地址EA的计算公式。
答:EA=位移量+基址+变址
13、 在内存物理地址为30476H起的连续地址空间内存放了一个值为90634511H的双字 型数据,
请用图表示出它们在存储器里存放的情况。
寄存器
30476H 11H
30477H 45H
30478H 63H
30479H 90H
30480H
13题图
2 12
寄存器
65780H 78H
65781H 56H
65782H 34H
65783H 12H
65784H
14题图


期末复习题(完整含答案版)

14、 在内存物理地址为65780H起的连续地址空间内存放了一个值为12345678H的双字 型数据,
请用图表示出它们在存储器里存放的情况。
15、 条件转移指令的转移范围是多少?
答:—128~127
16、 LOOP指令使用的循环计数器是什么?
答:CX.
17、 设有变量ABCD,要取它的偏移地址送到寄存器AX中,可用哪两种方法?用指令表达出
来。
答:①LEA AX,ABCD ②MOV AX,ABCD
18、 子程序调用时传递参数的三种基本方法是什么?
答:①通过寄存器传送。②通过堆栈传送。③通过变量传送。
19、 串操作指令在使用前应做哪些准备工作?
答:①把存放在数据段中的源串首地址(如反向传送则应是末 地址)放入源变址寄存器中。②
把将要存放数据串的附加段中的目的串首地址(或反向传送时的末地址) 放入目的变址寄存器中。
③把数据串长度放入计数寄存器。④建立方向标志。
二、简答题
写出下列各指令的源操作数的寻址方式。
(1)MOV AX,0AH 立即寻址 (21)SUB CX,0CFH 立即寻址
(2)MOV BX,12H 立即寻址 (22)MOV DX,49H 立即寻址
(3)MOV [BX],CL 寄存器寻址 (23)ADDC [BP],DL 寄存器寻址
(4)MOV [BX],CX 寄存器寻址 (24)ACHG [BX],AH 寄存器寻址
(5)MOV AX,[200H] 直接寻址 (25)AND AX,ES:[buf] 直接寻址
(6)MOV AX,[100H] 直接寻址 (26)MOV CX,SS:[buf] 直接寻址
(7)MOV BX,[BX] 寄存器间接寻址 (27)XOR AX,[DI] 寄存器间接寻址
(8)MOV AX,[BX] 寄存器间接寻址 (28)MOV CX,[BX] 寄存器间接寻址
(9)MOV AX,[BP] 寄存器间接寻址 (29)OR DX,[BP] 寄存器间接寻址
(10)MOV DX,[BP] 寄存器间接寻址 (30)MOV CX,[BP] 寄存器间接寻址
(11)MOV AX,[SI][BX] 基址变址寻址 (31)AND DL,[BP+DI] 基址变址寻址
(12)MOV CX,[BX][SI] 基址变址寻址 (32)MOV BX,[SI+BP] 基址变址寻址
(13)MOV DI,[BX+20] 相对基址寻址 (33)XOR SI,56[BX] 相对基址寻址
3 12


期末复习题(完整含答案版)
(14)MOV DI,20[BX] 相对基址寻址 (34)MOV DI,[BX+30] 相对基址寻址
(15)MOV DH,VAL[BX] 相对基址寻址 (35)ADD DL,buf[BX] 相对基址寻址
(16)MOV DH,ARRY[BX] 相对基址寻址 (36)MOV AL,[buf+BP] 相对基址寻址
(17)MOV DS,VAL 直接寻址 (37)MOV DS,[BX+DI] 基址变址寻址
(18)MOV DS,ARRY 直接寻址 (38)MOV DS,[BX+SI] 基址变址寻址
(19)MOV BX,VAL[BX][SI] 相对基址变址寻址 (39)MOV AH,[buf+BP+DI] 相对基址变址寻址
(20)MOV BX,ARRY[BX][DI] 相对基址变址寻址 (40)ADD AL,[buf+BX+SI] 相对基址变址寻址
三、判断题
对者在题号前的括号中打“√”,错的打“×”
(×) AL,DX
(√) CX,DX
(√) BX,[DI]
(×) [BP],[BX]
(√) DI
(√) SI
(×) AL 堆栈操作以字为单位
(×) DL 堆栈操作以字为单位
(√) BYTE PTR [BP],124
(√) BYTE PTR [BX],100
(√) [DI],BYTE PTR 24
(√) [BP],BYTE PTR 10
(×) [DX] DX不能间接寻址
(√) 2[BX]
(√) BL,1
(×) CX,[DX] DX不能间接寻址
(√) DAT[BP][DI],AL
(√) DAT[BX][SI],AX
(√) AL,BYTE PTR AC(AC为字变量)
(√) CX,WORD PTR WL(WL为字节变量)
四、程序填空题
1、 要求用移位指令实现(BX)<—(BX)*9
MOV AX,BX
MOV CL,3
SHL AX,CL
ADD BX,AX

2、 要求用移位指令实现(BX)<—(BX)*5
MOV AX,BX
MOV CL,2
SHL AX,CL
ADD BX,AX
3、 假设程序中数据定义如下:
ASD DB 3
要求把变量ASD的值在显示器上显示出来。
MOV DL,ASD
4 12
(√) BX,AX
(×) BL,CX
(√) AX,[SI]
(√) DI
(√) AX
(×) CL 堆栈操作以字为单位
(×) AL 堆栈操作以字为单位
(√) BYTE PTR [BP],98
(√) [BX],255
(√) [SI],BYTE PTR 35
(√) [BP],10
(×) [CX] CX不能间接寻址
(√) 8[BX]
(√) AL,1
(×) BX,[DX] DX不能间接寻址
(√) buf[BP][SI],CL
(√) buf[BX][DI],CX
(√) AL,BYTE PTR AC(AC为字变量)
(√) CX,WORD PTR WL(WL为字节变量)
(√) BX,[DI]



期末复习题(完整含答案版)
ADD DL,30H
MOV AH,2
INT 21H
4、 假设程序中数据定义如下:
X DB 3
要求把变量X的值在显示器上显示出来。
MOV DL,X
ADD DL,30H
MOV AH,3
INT 21H
5、 假设程序中字符串MESS定义如下:
MESS DB ’ABCDEF’
要求把字符串MESS送到显示器上显示出来。
LEA DX,MESS
MOV AH,9
INT 21H
6、 假设程序中字符串BUF定义如下:
BUF DB ‘ABCDEF’
MOV AH,9
INT 21H
7、 假设程序中数据定义如下:
BUF DB 32 DUP (?)
要求在BUF中查找第一个’B’.
CLD
MOV CX,32
MOV AL,’B’
LEA DI,BUF
REPEN SCASB
8、 假设程序中数据定义如下:
BUF DB 38 DUP(?)
要求在BUF中查找第一个’M’
CLD
MOV CX,38
MOV AL,‘M’
LEA DI,BUF
REPEN SCASB
9、 比较两个字符串B1和B2,其长度为20个字节,找出它们相匹配的位置。
LEA SI,B1
LEA DI,B2
CLD
MOV CX,0014H
REPNE CMPSB
10、比较两个字符串STR1和STR2,其长度为45个字节,找出它们不相匹配的位置。
LEA SI,STR1
5 12


期末复习题(完整含答案版)
LEA DI,STR2
CLD
MOV CX,002DH
REPE CMPSB
五、写出下列程序(段)的执行结果。
1、 CODE1 SEGMENT
ASSUME CS:CODE1
MAIN PROC FAR
START:
PUSH DS
XOR AX,AX
PUSH AX
MOV CH,4
MOV BX,1111B
ROT1:
MOV CL,4
ROL BX,CL
MOV DL,BL
AND DL,0FH
ADD DL,30H
CMP DL,3AH
JB OUT1
ADD DL,7H
OUT1:
MOV AH,2
INT 21H
DEC CH
JNZ ROT1
RET
MAIN ENDP
CODE1 ENDS
END MAIN
此程序执行后,屏幕上显示的内容为:C48F
2、 DATA SEGMENT
BUF DB 7,9,6
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
BEGIN:
MOV AX,DATA
MOV DS,AX
MOV CX,2
MOV BX,OFFSET BUF
MOV SI,1
6 12


期末复习题(完整含答案版)
MOV AL,BUF
AAA:
CMP AL,[BX+SI]
JL NEXT
MOV AL,[BX+SI]
NEXT:
INC SI
LOOP AAA
MOV DL,AL
ADD DL,30H
MOV AH,2
INT 21H
MOV AH,4CH
INT 21H
CODE ENDS
END BEGIN
执行此程序后,屏幕上显示的内容为:6 (此程序功能是将串中小于7的数字屏显出来)
3、 MOV AL,03H
MOV CL,2
SHL AL,CL
此指令段执行后,AL中的值为:0CH (即3*2*2=12)
4、MOV AL,40H
MOV CL,2
SHR AL,CL
此程序段执行后,AL中的值为:10H (即6422=16)
5、CODE SEGMENT
ASSUME CS:CODE
MAIN:
MOV AH,1
INT 21H
MOV AH,2
MOV DL,AL
ADD DL,30H
INT 21H
MOV AH,4CH
INT 21H
CODE ENDS
END MAIN
设输入数字7,其输出结果是多少? 7
6、 CODE SEGMENT
ASSUME CS:CODE
MAIN:
MOV AH,1
INT 21H
7 12


期末复习题(完整含答案版)
ADD AL,2
MOV AH,2
MOV DL,AL
ADD AL,30H
INT 21H
MOV AH,4CH
INT 21H
CODE ENDS
END MAIN
设输入数字3,其输出结果是多少? 5
六、程序设计
1、 求两个字节数X和Y的2倍放到Z单元中。设X与Y的和是字节数。
DATA SEGMENT
X DB 2
Y DB 2
Z DB ?
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:
MOV AX,DATA
MOV DS,AX
MOV BL,X
MOV CL,Y
ADD BL,CL
MOV CL,BL
ADD CL,BL
MOV Z,CL
MOV DL,Z
ADD DL,30H
MOV AH,02H
INT 21H
MOV AH,4CH
INT 21H
CODE ENDS
END START
2、 求两个字节数X和Y的平均数放到Z单元中。
DATA SEGMENT
X DB 7
Y DB 8
Z DB ? 商
W DB ? 余数
DATA ENDS
CODE SEGMENT
8 12


期末复习题(完整含答案版)
ASSUME CS:CODE,DS:DATA
START:
MOV AX,DATA
MOV DS,AX
MOV BL,X
MOV CL,Y
ADD BL,CL
CBW
MOV AX,BX
MOV CL,2
DIV CL
MOV Z,AL
MOV W,AH
MOV DL,Z
ADD DL,30H
MOV AH,02H
INT 21H
MOV DL,W
ADD DL,30H
MOV AH,02H
INT 21H
MOV AH,4CH
INT 21H
CODE ENDS
END START
3、 编写程序,把从键盘读入的一个小写字母转换成相应的大写字母 ,并输出。(注:对应大小写
字母之间的ASCII码值相差20H)
PROGNAM SEGMENT
MAIN PROC FAR
ASSUME CS:PROGNAM
START:
PUSH DS
SUB AX,AX
PUSH AX
NEXT:
MOV AH,1
INT 21H
CMP AL,'A'
JB EXIT
CMP AL,'Z'
JA EXIT
SUB AL ,20H
MOV DL,AL
MOV AH,2
9 12


期末复习题(完整含答案版)
INT 21H
MOV DL,0AH
MOV AH,2
INT 21H
JMP NEXT
EXIT:
RET
MAIN ENDP
PROGNAM ENDS
END START
4、 编写程序,把从 键盘读入的一个大写字母转换成相应的小写字母,并输出。(注:对应大小写
字母之间的ASCII码值 相差20H)
PROGNAM SEGMENT
MAIN PROC FAR
ASSUME CS:PROGNAM
START:
PUSH DS
SUB AX,AX
PUSH AX

NEXT:
MOV AH,1
INT 21H
CMP AL,'A'
JB EXIT
CMP AL,'Z'
JA EXIT
ADD AL ,20H
MOV DL,AL
MOV AH,2
INT 21H
MOV DL,0AH
MOV AH,2
INT 21H
JMP NEXT
EXIT:
RET
MAIN ENDP
PROGNAM ENDS
END START
5、 已知数组X包含有8个无符号整数,编写对其中的每个奇数计算1+2+…+N,并 把它们顺序
存入内存字单元SUM开始的存储区中,要求1+2+…+N用子程序实现。不考虑溢出。
DATA SEGMENT
X DW 2,3,4,5,6,7,8,9
10 12


期末复习题(完整含答案版)
SUM DW 8 DUP (?)
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
MAIN:
MOV AX,DATA
MOV DS,AX
LEA BX,X
LEA DI,SUM
MOV CX,8
NEXT:
MOV DX,[BX]
MOV AX,DX
SHR AX,1
JNC N1
CALL SUB1
MOV [DI],AX
ADD DI,2
N1:
ADD BX,2
LOOP NEXT
MOV AH,4CH
INT 21H
SUB1 PROC NEAR
PUSH CX
XOR AX,AX
MOV CX,DX
AGAIN:
ADD AX,CX
LOOP AGAIN
POP CX
RET
SUB1 ENDP
CODE ENDS
END MAIN
6、 已知数组X包含有8个无符号整数,编写对其中的每个偶数计算1+2+…+N,并把它们顺序< br>存入内存字单元SUM开始的存储区中,要求1+2+…+N用子程序实现。不考虑溢出。
DATA SEGMENT
X DW 2,3,4,5,6,7,8,9
SUM DW 8 DUP(?)
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
MAIN:
11 12


期末复习题(完整含答案版)
MOV AX,DATA
MOV DS,AX
LEA BX,X
LEA DI,SUM
MOV CX,8
NEXT:
MOV DX,[BX]
MOV AX,DX
SHR AX,1
JC N1
CALL SUB1
MOV [DI],AX
ADD DI,2
N1:
ADD BX,2
LOOP NEXT
MOV AH,4CH
INT 21H
SUB1 PROC NEAR
PUSH CX
XOR AX,AX
MOV CX,DX
AGAIN:
ADD AX,CX
LOOP AGAIN
POP CX
RET
SUB1 ENDP
CODE ENDS
END MAIN








注:编者水平 有限,不能保证所有答案都正确,如发现错误之处,请指出。卷上部分答案来源于
互联网,不代表标准答 案,此卷仅供参考。最后两个编程题中有一道考试必考!我只能帮你们到
这里了!呵呵

12 12

世界名车排行榜-支行行长述职报告


郑州一中吧-三字经全文解释


郑州科技学院地址-成本会计岗位职责


neea-重庆注册会计师协会


二级建造师成绩查询时间-陕西省高考网上报名


全国二本大学排名-南昌商学院


经典相声-车库租赁合同


公务员考试信息网-幼儿园中班家长会发言稿