微机原理复习题Word格式.docx
- 文档编号:17873416
- 上传时间:2022-12-11
- 格式:DOCX
- 页数:13
- 大小:34.54KB
微机原理复习题Word格式.docx
《微机原理复习题Word格式.docx》由会员分享,可在线阅读,更多相关《微机原理复习题Word格式.docx(13页珍藏版)》请在冰豆网上搜索。
C.标志寄存器值、IPD.标志寄存器值,CS、IP
14、若要产生汇编错误,则字符串’ABC’只能出现在伪指令()中。
A.DQB.DDC.DWD.DB
15、在汇编语言程序的开发过程中使用宏功能的顺序是()。
A、宏定义,宏调用B、宏定义,宏展开
C、宏定义,宏调用,宏展开D、宏定义,宏展开,宏调开
16、要在程序中定义缓冲区BUF,保留10个字节存储空间的语句是()
A.BUFDW10B.BUFDB10
C.BUFDB10DUP(?
)D.BUFDW10DUP(?
)
17、IBMPC微机中,有符号数是用()表示的
A、原码 B、补码 C、反码 D、BCD码
18、设SP初值为3050H,执行指令PUSHBX后,SP的值是( )
A.304FHB.304EH
C.3048HD.3049H
19、JMPBX指令的寻址方式是( )
A.寄存器寻址B.寄存器间接寻址
C.段内直接转移寻址D.段内间接转移寻址
20、DF=1,执行MOVSB指令后( )
A.SI减1,DI减1B.SI加1,DI加1,CX减1
C.SI减1,DI减1,CX减1D.SI加1,DI加1,CX加1
21.指令MOVBX,MASK[BP],若MASK=3500H,SS=1200H,DS=1000H,BP=1000H,那么源操作数的物理地址为:
A.17500H B.16500H C.14500H
D.13500H
22.十六进制数88H,可表示下面几种形式,请找出错误的表示()。
A.无符号十进制数136
B.带符号十进制数-120
C.压缩型BCD码十进制数88
D.8位二进制数-8的补码表示
23.指令指针寄存器是()。
A.IPB.SPC.BPD.PSW
24.设数据段中已有:
DA1DB12H,34H
DA2DW56H,78H
下面有语法错误的语句是()。
A.ADR1DWDA1B.MOVDA1+1,AX
C.MOVBYTEPTRDA2+1,ALD.MOVWORDPTRDA1+1,AX
25.堆栈的工作方式是()
A.先进先出B.随机读写 C.只能读出,不能写入D.后进先出
26.指令MOVAX,[3070H]中源操作数的寻址方式为()
A.寄存器寻址B.直接寻址 C.立即寻址D.间接寻址
27.要求CX=-1时转至MINUS处,下面的指令序列不能实现这一功能的是()。
A、INCCX
JZMINUS
B、SUBCX,OFFFFH
C、ANDCX,OFFFFH
D、XORCX,OFFFFH
JZMINUS
28.以下跳转指令中不属于段内跳转的是():
A.JMPNEARPTRL1B.JMPSHORTL2
C.JMPDWORDPTR[BX]D.JNZL3
29.下列寄存器组中在段内寻址时可以提供偏移地址的寄存器组是()。
30.对寄存器AX的内容乘以4的正确指令是()。
A.SHRAX,2B.SHLAX,2
C.ROLAX,2D.RCRAX,2
二、填空
1.若[x]补=ADH,则[x]原=()H。
2.计算机中的指令由______字段和______字段两部分组成。
3.n位补码的表数范围为:
_________
4.在8086段的最大长度是_________。
5.代表无符号数运算溢出的标志位时_______。
6.LOOP指令的结束条件是_________。
7.在实模式下80x86CPU能够访问的存储器空间为()byte,指令中访问的操作数的逻辑地址由偏移地址和()地址来表示。
8.指令MOVDX,[BX+SI+100H]的源操作数为()寻址方式。
9.假设(DS)=2000H,(ES)=3000H,(SS)=4000H,(BX)=1000H,(BP)=1000H,(DI)=0002H,(21000H)=1234H,(21002H)=5678H,(31000H)=9ABCH,(31002H)=0DEF0H,(41000H)=3456H,(41002H)=789AH。
则MOVAX,ES:
[1000H]执行时操作数的物理地址为;
MOVAX,[BX]执行后(AX)=;
MOVAX,[BP+DI]执行时操作数的物理地址为,执行后(AX)=。
30020h
30h
30021h
11h
30022h
32h
30023h
89h
40h
10.
8086存储器中存放信息如图所示,则30022H单元的字节内容为,30020H单元的字内容为。
11.已知(CS)=1500H,(IP)=0110H,则8086执行指令的物理地址为,如果该指令是长度为2字节的加法指令,则在无中断产生的情况下,执行完该指令后IP=。
12.现有(DS)=3000H,(BX)=0100H,(SI)=0002H,(30100H)=12H,(30101H)=a7H,(30102H)=35H,30103H=98H,填写每条指令执行后AX的值
(1)MOVAX,1200HAX=
(2)MOVAX,[BX]AX=
(3)MOVAX,[BX+SI]AX=
(4)MOVAX,[SI+100H]AX=
13.已知数据段有如下定义:
ORG0200H(设置$=0200H)
TABLEDW0314H
填写指令执行后AX的值。
MOVAX,OFFSETTABLEAX=
MOVAX,TABLEAX=
14.设(CS)=1000H,BX=1100H,则执行指令JMPBX后,IP=,指令的物理地址为
15、调用程序、子程序传送参数的方法通常有_______、_______和_______三种方法。
四、简答
1、简述指令与伪指令的区别。
2、宏指令和子程序的区别。
3、在80x86实模式下,在一个程序开始运行的时候(CS)=0BA3H,(IP)=0978H,请问该程序第一个字的物理地址是多少?
4、以下指令中哪些属于段间转移指令?
(1)JNCNEXT
(2)JMPBX
(3)JMPFARPTRLOP1(4)JMPWORDPTRES:
[2000H]
(5)JMPDWORDPTR[BX+10H](6)JMPNEARPTRTOWHERE
6、子程序声明中主要有哪些属性可以指定?
7、在80x86实模式下,哪些寄存器可以用来指示存储器地址?
8、如果一个文件ex1.asm中定义了一个字节变量BYTE1,而文件file2.asm中将使用该变量,请问如何实现?
9.8086中基本结构寄存器的通用寄存器有哪些,段寄存器又有哪些?
10.子程序中通常要保护现场和恢复现场,如在子程序中用如下指令序列保护现场:
PUSHAX
PUSHSI
PUSHBP
请写出对应的恢复现场的指令序列。
五、按要求回答问题。
1.以下的程序实现将内存单元20000H开始的100个字节初始化为‘a’,请将程序补充完整。
MOVDS,2000H
MOVSI,_____
________________
MOV_____,100
MOV_____,’a’
2.设num1,num2都为字变量,请指出下面语句序列的功能
MOVAX,num1
XORDX,DX
ORAX,AX
JNSSKIP
MOVDX,OFFFFH
SKIP:
IDIVnum2
3.(3分)阅读程序,回答问题。
MOVAL,0
MOVBL,0
MOVCX,10
L1:
INCBL
INCBL
ADDAL,BL
LOOPL1
HLT
程序实现的功能是________________________________
4.MOVCX,NUM
XORAL,AL
L1:
JCXZL2
SHLCX,1
JNCL1
INCAL
JMPL1
L2:
MOVRESULT,AL
问题:
(1)该程序段的功能是。
(2)若NUM中数据是0E5A6H,则运行后RESULT中数据为______。
5.STRINGDB‘ABCDEFGHIJ’
:
MOVAH,01;
从键盘输入字符1~9
INT21H
SUBAL,30H
DECAL
XORAH,AH
MOVBX,OFFSETSTRING
ADDBX,AX
MOVBL,[BX]
MOVAH,02H;
显示输出
试回答:
(1)上述程序段的功能是什么?
(2)如从键盘输入字符’6’,屏幕有什么结果?
6.阅读下列程序回答问题:
DATASEGMENT
BUFDB32H,75H,0C9H,85H;
共4个数据
RESULTDB?
DATAENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA
START:
MOVAX,DATA
MOVDS,AX
LEASI,BUF
MOVCX,4
MOVBX,0
LP1:
MOVDH,8
MOVAL,[SI]
LP2:
RORAL,1
JCNEXT
INCBX
NEXT:
DECDH
JNELP2
INCSI
LOOPLP1
MOVRESULT,BX
MOVAH,4CH
INT21H
CODEENDS
ENDSTART
问该程序主要完成什么功能?
程序执行完变量RESULT的值为多少?
答:
7.阅读下列程序回答问题:
;
FILENAME:
P101.Asm
.486
DATASEGMENTUSE16
BUFDB‘QWERTYUIOP123’
COUNTEQU$-BUF
RESDB‘RESULT=’,20H,0DH,0AH,‘$’;
20H表示空格
DATAENDS
CODE1SEGMENTUSE16
ASSUME:
CS:
CODE1,DS:
BEG:
MOVAX,DATA
MOVDS,AX
LEABX,BUF
MOVAL,[BX]
MOVCX,COUNT
DECCX
LAST:
CMP[BX],AL
JBNEXT
NEXT:
LOOPLAST
MOVSI,OFFSETRES+7
MOV[SI],AL
MOVAH,9
MOVDX,OFFESTRES
MOVAH,4CH
CODE1ENDS
问以上程序完成什么功能?
执行完该程序,屏幕上将会有什么输出结果?
8.、设(SS)=4000H,(SP)=1200H,执行下列指令序列,画图说明SP和堆栈内容变化过程的示意图,并在有分号的地方分别标出(AX),(SP),((SP))的内容。
MOVAX,23AAH
PUSHAX ;
(SP)=;
((SP))=
MOVAX,6735H
PUSHAX
MOVBP,SP
ADDWORDPTR[BP],3000H
POPAX;
AX=
画堆栈变化示意图:
9、A、B是长度为10的字节数组,用串操作指令编写程序实现A、B两数组内容的相互交换,试完善本程序。
ADB1,2,3,4,5,6,7,8,9,0AH
ORG0010H
BDB0AH,9,8,7,6,5,4,3,2,1
......
LEASI,A
LEADI,B
(
(1))
MOVCX,10
LOP:
LODSB
XCHGAL,[DI]
(
(2))
DECDI
STOSB
((3))
INCDI
LOOPLOP
10.仔细阅读下列程序段
DAT1
DB
30
DUP(?
DAT2
10
┇
MOV
CX,10
BX,20
SI,0
DI,0
MOV
AL,DAT1[BX][SI]
DAT2[DI],AL
INC
SI
DI
LOOP
NEXT
以上程序完成什么功能?
(3分)
答题处:
11.设AX,BX中的数一个为正数,一个为负数,下面程序段完成将正数送到PLW单元中存放,请将程序中所缺指令语句补上。
(每空2分,共4分)
TESTAX,8000H
MOVPLW,BX
JMPDONE
K1:
DONE:
……
六、综合题。
1.试编一程序,比较两个字符串STRING1和STRING2所含字符是否完全相同。
若相同,则显示“MATCH”,若不相同则显示“NOMATCH”
2.编程实现:
将从键盘上接收到的一串字符(字符个数≤60)以其相反的次序显示在屏幕上。
3.将从键盘上输入的两位十进制数转换为十六进制并送CRT显示。
4.(4分)设8251A工作在异步模式,波特率系数(因子)为16,7个数据位/字符,偶校验,2个停止位,发送、接收允许,设端口地址为00E2H和00E4H,其中00E2H为控制口。
完成相应的8251A的初始化程序。
5.(10分)设数据段ARRAY单元开始有20个有符号数的双字节数,要求从其中寻找最大值,并将其存放于字单元MAX中,并按十六进制的形式显示出来。
写出实现该功能的宏汇编程序(要求完整的宏汇编程序结构)。
6.编写子程序,对AL中的标准ASCII码设置偶效验。
(7分)
7.设现有40个有符号数,请统计它们正、负数的个数,分别保存在UNSIGNED和SIGNED两个变量中。
(8分)
8.如下图所示:
设8254的计数器时钟频率是2MHZ,用8254产生2KHZ方波,每产生10个方波,通过8255输出1个正脉冲,当用户有键盘输入的时候程序停止。
(10分)
设8259已经初始化完毕,8259IR0对应的中断类型号是08H。
要求:
(1)编程对8254进行初始化。
(2)编制8255初始化程序
9.(6分)假设定时/计数器8254的端口地址范围为100H–103H,0#计数器的CLK端的时钟输入频率为1000,000Hz,要求在0#端口的输出端OUT上输出频率为01000Hz的方波,计数初值以十进制方式表达,写出相应地8254初始化程序片断,并给出初始值的计算过程。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 复习题