微机原理复习题reviewWord格式文档下载.docx
《微机原理复习题reviewWord格式文档下载.docx》由会员分享,可在线阅读,更多相关《微机原理复习题reviewWord格式文档下载.docx(13页珍藏版)》请在冰豆网上搜索。
![微机原理复习题reviewWord格式文档下载.docx](https://file1.bdocx.com/fileroot1/2023-1/28/71220ddb-e55f-4bc0-a033-70c485bf2765/71220ddb-e55f-4bc0-a033-70c485bf27651.gif)
A、立即寻址B、寄存器间接寻址C、直接寻址D、寄存器寻址18、已知AL=7EH,DL=8AH,执行CMPAL,DL指令后,标志寄存器中C、O、S、Z四标志的状态分别为()。
A、0、0、1、0B、0、1、1、0C、1、0、1、0D、1、0、0、019、已知BL=08H,DL=0E2H,执行XORDL,BL指令后,DL寄存器中的数为()A、132B、20HC、00HD、0EAH20、CPU响应中断后得到中断类型码是9,则从()单元取出中断服务子程序的入口地址A、0009HB、00009HC、00024HD、0024H二、多项选择题在每小题列出的五个选项中有二至五个选项是符合题目要求的,请将正确选项前的字母填在题干中的括号内。
多选、少选、错选均无分。
168086CPU的下列寄存器中,不能用作寄存器间接寻址方式时的地址寄存器的有()。
A、AXB、BXC、CXD、DXE、SI178086有两种工作模式,即最大模式和最小模式,其中最小模式的特点是()。
A、8086提供全部控制信号B、必须使用总线控制器8288C、必须使用总线收发器D、必须使用总线锁存器E、构成单处理器系统18大部分DMAC都拥有()等传送方式。
A、直接传送方式B、单字节传送方式C、查询传送方式D、成组传送方式E、中断传送方式19要对可编程接口芯片进行读操作时,必须满足()A、CS=LB、RD=L,WR=HC、WR=L,RD=HD、RD=LWR=LE、RD=H,WR=H三、判断说明题判断下列各题正误,正者在括号内打“”,误者在括号内打“”并说明理由。
20在8086最小方式的总线读时序图中,在T2时钟周期时,AD0-ADl5地址总线呈现高阻态。
()21对于可屏蔽中断的嵌套处理原则是允许优先级高的中断打断优先级低的中断,允许同级中断相互打断,而不允许优先级低的中断打断优先级高的中断。
()228086CPU在收到外部中断请求信号以后,进人中断响应周期,通过IN指令读取中断类型号,从而就可获得中断服务程序入口地址。
()23可编程定时器计数器,其定时与计数功能可由程序灵活地设定,但由于是由软件控制,在计数过程中必然会占用CPU的时间。
()24.指令一般包括两部分:
操作码和操作数。
()25.一个总线周期有一个或若干个指令周期组成。
()26.8086有一个16位标志寄存器,它包含了6个状态标志位和3个控制标志位。
()27.一片8259A中断控制器最多能接收8个中断源。
()四、填空题28.每片8253包含有个独立的16位计数通道,每个通道具有种工作方式。
29.取指令时,8086会自动选择值作为段基值,再加上由提供的偏移量形成物理地址。
30.8086/8088微处理器被设计为两个独立的功能部件:
_和_。
31.TEL8086的当前CS=2000H,IP=5678H,则将执行20位物理地址处的程序。
32.8086存储器组织中,逻辑地址由十六进制4位构成的,物理地址又由十六进制位构成。
33.一片8259A可管理__级中断,若级联三片从片则可以管理级中断。
34、若DS=1200H,则当前数据段的起始地址是,末地址是。
35.系统中数据传送的控制方式中程序控制的数据传送可分为和。
36.“串行通信”是指数据。
在串行通信中有两种基本的通信方式:
即和。
37.主机和I/O设备间的数据传送有、和三种方式,其中和传送过程中CPU无需参与,而是由和控制完成。
38.8086系统中,要求各个逻辑段必须从节的整数倍边界开始,即段首地址的低4位总是。
将段首地址的高16位地址码称作,存放在相应的中。
39.由逻辑地址获得物理地址的计算公式为。
40.80X86系统中,堆栈是遵循原则。
41.在8086最小模式的典型配置中,需片双向总线收发器8286,因为。
42.8086/8088系统中I/O端口地址是二进制数位的,可寻址个端口。
每个端口中含位的数据。
43.8086/8088的I/O指令中若采用立即数寻址,要求端口地址必须在范围之内;
若采用寄存器间接寻址,则端口地址在范围之内。
五、简答题43在IO接口电路中,按主机与外设间传送的信息类型,端口可分为哪几类?
CPU对这些端口实行读操作还是写操作?
44与并行通信相比较,串行通信有什么特点?
45.8086/8088CPU响应任何一种中断时,都会自动的将IF和TF标志清零,其目的是什么?
46.CPU响应多种中断时,都要自动地保护断点,为什么?
47.当某一中断发生时,CPU如何能找到相应的中断服务程序入口地址?
48.分别指出下列指令中源操作数的寻址方式:
(5分)A.MOVSI,100B.MOVCX,DATASIC.MOVSI,AXD.ADDAX,BXDIE.POPF49.什么是中断?
什么是中断向量?
什么是中断向量表?
INT24在中断向量表的什么位置?
一个完整的中断过程有哪几个步骤?
50.简述8086CPU由哪些寄存器组成。
51.简述8086/8088系统中为什么要使用地址锁存器?
52.已知SDRAM6264的片容量是8K8位,问它的外部引脚中含多少根地址线和数据线?
六、简单分析、设计题53.下面程序段执行完以后,BX的内容是什么?
MOVBX,00FFHANDBX,0FFFHORBX,0F0FHXORBX,00FFH54.下列程序段完成什么工作?
DAT1DB30DUP(?
)DAT2DB10DUP(?
)MOVCX,10MOVBX,20MOVSI,0MOVDI,0NEXT:
MOVAL,DAT1BXSIMOVDAT2DI,ALINCSIINCDILOOPNEXT55.设8086系统中,中断请求信号采用边沿触发方式,单片8259A,中断类型码高5位为01010,中断源接在IR2上,普通全嵌套方式,非自动结束方式,缓冲方式。
(设:
ICW1口地址为80,ICW2、ICW3、ICW4口地址为81)编写初始化程序。
56.已知(AX)=0120H,(BX)=2000H,(CX)=0FF2H,(DS)=1000H,(ES)=2000H,存储器中的数据如图所示。
请写出下列指令单独执行时,对寄存器和存储器内容将产生什么影响?
(1)MOVAX,BX(5)LDSDI,l000H
(2)MOVAX,ES:
BX(6)LESSI,0FFEH(3)MOVBX,CX(7)XCHGAX,BX(4)LEACX,BX(8)XLAT57.写出四条指令,分别能将AX寄存器清零。
58.下列指令是否有错?
有则指出错误所在:
(1)MOVDS,117CH
(2)MOVBX,28A0H(3)MOVCS,AX(4)MOVDS,ES(5)MOVAL,DX(6)MOVAX,1000BX(7)MOVBX,AX(8)MOVAL,C8H(9)MOVAX,00F1(10)MOVAX,SI-10七、综合分析、设计题59在某一系统中,有8个开关K7K0,要求不断检测它们的通断状态,并通过发光二极管LED7LED0显示出来。
开关断开,相应的LED点亮;
开关合上,LED熄灭。
选用8086CPU,8255A和74LS138译码器等芯片,构成应用电路。
如下图所示,8255A的PA口作输人口,8个开关K7K0分别接PA7PA0。
PB口为输出口,PB7PB0分别连接显示器LED7LED0。
试进行编程设置。
60.
(1)某系统中,8253的端口地址为0B4H0B7H,令计数器通道1工作在方式0,仅用8位二进制数计数,计数初值为100,试进行初始化编程。
(2)某片8253的计数器通道2工作在方式1,按BCD码计数,计数值为5000,该端口地址为0B4H0B7H,请初始化编程。
61.对8255A进行初始化,要求A口为输出工作方式0;
B口输入工作方式1;
C口高四位输入,低四位输出。
(地址04A0H0A406H)62.求两个多字节数之和。
这两个数在21000H地址开始的内存单元中,连续存放,低位在小地址一端,结果放在这两个数之后。
设这两个多字节数均为八个字节长。
试画出程序流程图并编写相应程序。
63.用可编程并行接口芯片8255A作为打印机接口。
其中端口A工作于方式一,用于向打印机输出打印数据,端口C用作状态口和控制口。
编写程序,打印存储区为1200H1400H内所有字符的程序。
设8255A的口地址分别为端口A:
0FFF0H,端口B:
0FFFlH端口C:
OFFF2H,控制口:
0FFF3H。
64.某8086系统中使用8237A完成从存储器到存储器的数据传送,已知源数据块首地址的偏移地址值为1000H,目标数据块首地址的偏移地址为1050H,数据块长度为100字节,请编写初始化程序。
65、编写8251异步模式下的接收和发送程序,完成256个字符的发送和接收,设端口地址:
208H(数据端口),209H(控制端口),波特率因子16,1起始位,1停止位,无奇偶校验,每字符8位。
66、已知4500H开始的单元中放有100个单字节带符号数:
(1)若从头至尾每10个数一组,试编写一程序求每一组的和并依次放于6500H开始的单元中;
(2)编程统计100个数据中负数的个数和正数的个数分别存放于DX和BX中。
67.某片8255A的端口地址为00E000E3H,设端口A、B都工作在方式0下,A端口输出,,B口输人,C口的高4位输出,C口的低4位输人。
请对它进行初始化编程。
方式选择控制字为:
83H68.设在一个系统中,8255A的端口地址为184H187H,A口工作于方式1输出,允许中断,B口工作于方式1输入,禁止中断,C口剩余的两根线PC5、PC4位输人,如图9-14所示,试编写初始化程序。
3.11址为DATAB开始的80个单元中,存放某班80个学生的某课程成绩,要求:
统计=90分、8089分、7079分、6069分、60分以下的人数,结果存放在BTRX开始的5个单元中求平均成绩,结果存放在LEVEL中。
解:
寄存器使用分配:
90分以上在DH,80分以上在DL,70分以上在BH,60分以上在BL,60分以下在AH,总分、均分都在DI。
ORG100hXORAH,AHXORDX,DX;
统计结果清零XORBX,BX;
统计结果清零LEASI,DATALEADI,LEVELMOVCL,CONT;
总人数送循环计数器CXgoon:
MOVAL,SI;
读原始数据ADCDI,AL;
累加总分累加总分ADCDI+1,0;
计算进位CMPAL,90JLPP8;
不高于90分者转PP8INCDH;
90-100分的人数加一JMPSTORPP8:
CMPAL,80JLPP7;
不高于80分转PP7INCDL;
80-89分的人数加一JMPSTORPP7:
CMPAL,70JLPP6;
不高于70分者转PP6INCBH;
70-79分的人数加一JMPSTORPP6:
CMPAL,60JLPP5;
不高于60分者转PP5INCBL;
60-69分的人数加一JMPSTORPP5:
INCAH;
低于60分的人数加一STOR:
INCSI;
读下一个分数LOOPGOON;
CX=CX-1,CX不为零转GOON,继续统计LEASI,BUFFER;
回存统计结果MOVSI,DHINCSIMOVSI,DLINCSIMOVSI,BHINCSIMOVSI,BLINCSIMOVSI,AHMOVAX,WORDPTRDI;
计算平均成绩MOVCL,CONTDIVCLMOVLEVEL,AL;
回存平均成绩HLTCONTDB10DATADB30,65,99,80,75,89,100,45,60,70BUFFERDB?
?
LEVELDB?
在BVFF单元中有一个BCD数A,试根据下列关系编写程序,计算结果存在DES中.A20,Y=3*A;
A=60,Y=80.ORG100hMOVAL,BVFFCMPAL,20JLEX1CMPAL,60JLEX2MOVAL,80JMPSTOPEX1:
MOVBL,3MULBLJMPSTOPEX2:
SUBAL,20STOP:
MOVDES,ALHLTBVFFDB8DESDB?
在DATA之下存放100个无符号的8位数,找出其最大者并将其存放在KVFF单元。
ORG100hXORDL,DLLEADI,KVFF;
NEXT0:
LEASI,BUFFER;
MOVCL,99;
比较次数为N-1次NEXT1:
MOVAL,SI;
INCSI;
CMPDL,AL;
JNCNEXT2;
MOVDL,AL;
DL中始终存目前最大值NEXT2:
DECCL;
JNZNEXT1;
MOVDI,DL;
最大值存储HLTBUFFERDB;
自行定义100个数据KVFFDB?
3.1编写10个字(16位二进制数)之和的程序ORG100hLEASI,ADD1;
LEADI,ADD2;
LEABX,SUM;
MOVCL,CONT;
MOVCH,0;
循环初始化CLC;
进位清零MADD1:
MOVAX,SI;
读加数1ADCAX,DIADDSI,2;
移动源区地址指针ADDDI,2;
移动目的区地址指针MOVBX,AX;
回存计算结果ADDBX,2;
移动“和”存储区地址指针LOOPMADD1;
循环控制HLT;
暂停ADD1DB0FEH,86H,7CH,44h,56H,1FH,24H,01H,02H,33H;
加数1ADD2DB56H,49H,4EH,0FH,9CH,22H,45H,11H,45H,21H;
加数2SUMDB10DUP(0);
和存储单元CONTDB5;
循环次数1、宏汇编语言程序被汇编时,指令语句产生代码指令,伪指令语句不产生代码指令,宏指令语句可能产生也可能不产生代码指令。
2、调用程序、子程序传送参数的方法通常有寄存器、内存和堆栈三种方法。
3、伪指令EQU、DB、DW、MACRO的标号名字域必须有名字或标号的伪指令为EQU、MACRO。
8、乘法指令MUL的指令格式只有一个源操作数,若源操作数的类型属性为字节,则目的操作数在AX中,若源操作数的类型属性为字,则目的操作数在DX:
AX中。
注:
将题中的目的操作数改为乘积更确切一些。
9、请给出标志寄存器中标志位OF、IF、SF、ZF、PF、CF的说明:
OF溢出、IF中断、SF符号、ZF零、PF奇偶、CF进位。
12、指令XLAT通常用于查表操作,在使用该指令前,应把表首的偏移首地址送入BX,待转换的代码在表中的序号送AL。
13、若要求不产生汇编错误,则字符串ABC只能出现在伪指令DB中。
19、为下述情况各举一例。
寄存器与存储单元内容相加送寄存器ADDAL,BX。
寄存器互送MOVAX,BX。
将标志寄存器进栈PUSHF。
立即数与寄存器内容相加送寄存器ADDAX,1234H。
将48H、5AH存入字节数据区ARRAYBARRAYBDB48H,5AH。
三、(10分)阅读如下程序段,回答提出的问题。
MOVAX,3456XCHGAX,BXMOVAX,3456SUBAX,BXJEDONEKK:
ADDAX,BX.DONE:
该程序段执行完JEDONE语句后,AX=00H,ZF=1,IP=DONE的偏移地址。
四、(10分)请在程序段的每一空框内填入一语句(不得修改其它语句),以实现下述功能:
将字变量VARM1中的非零数据左移到最高位为“1”止,左移次数存入字节变量VARB中,左移后的结果存入字变量VARW中。
MOVBL,0MOVAX,VARW1JSDONEGOON:
INCBLADDAX,AXDONE:
MOVVARW,AX