微机原理作业答案.docx
- 文档编号:26349089
- 上传时间:2023-06-18
- 格式:DOCX
- 页数:21
- 大小:52.62KB
微机原理作业答案.docx
《微机原理作业答案.docx》由会员分享,可在线阅读,更多相关《微机原理作业答案.docx(21页珍藏版)》请在冰豆网上搜索。
微机原理作业答案
微机原理作业
1.8086CPU由哪两部分组成?
它们的主要功能是什么?
答:
8086CPU由总线接口单元(BIU)和指令执行单元(EU)组成。
总线接口单元(BIU)的功能是:
地址形成、取指令、指令排队、读/写操作数和总线控制。
指令执行单元(EU)的功能是指令译码和指令执行。
2.微型计算机系统由微处理器、存储器和I/O接口等组成。
3.8086CPU中的指令队列可存储6个字节的指令代码,当指令队列至少空出2个字节时,BIU单元便自动将指令取到指令队列中;
4.8086系统中,1MB的存储空间分成两个存储体:
偶地址存储体和
奇地址存储体,各为512字节。
5.8086系统中存储器采用什么结构?
用什么信号来选中存储体?
答:
8086存储器采用分体式结构:
偶地址存储体和奇地址存储体,各为512K。
用AO和BHE来选择存储体。
当AO=0时,访问偶地址存储体;当BHE=0时,访问奇地址存储体;当AO=0,BHE=0时,访问两个存储体。
6.在8086CPU中,指令指针寄存器是C。
(A)BP(B)SP(C)IP(D)DI
7.8086CPU中的SP寄存器的位数是B。
(A)8位(B)16位(C)20位(D)24位
8.8086CPU中指令指针寄存器(IP)中存放的是B。
(A)指令(B)指令偏移地址(C)操作数(D)操作数偏移地址
9.若当前SS=3500H,SP=0800H,说明堆栈段在存储器中的物理地址(最大),若此时入栈10个字节,SP内容是什么?
若再出栈6个字节,SP为什么值?
答:
堆栈段的物理地址范围:
35000H~357FFH
当前顶的物理地址为:
35000H+0800H=35800H
入栈10个字节以后:
SP=0800H-000AH=07F6H
出栈6个字节以后:
SP=07F6H+0006H=07FCH
10.下列关于8086系统堆栈的论述中,正确的是A。
(A)堆栈的工作方式是“先进后出”,入栈时SP减小
(B)堆栈的工作方式是“先进后出”,入栈时SP增大
(C)堆栈的工作方式是“先进先出”,入栈时SP减小
(D)堆栈的工作方式是“先进先出”,入栈时SP增大
11.8086CPU对内存读/写操作,需两个总线周期的读/写操作是D。
(A)从偶地址读/写一个字节(B)从奇地址读/写一个字节
(C)从偶地址读/写一个字(D)从奇地址读/写一个字
12.总线周期是指C。
(A)执行一条指令所需要的时间;
(B)BIU完成一次读和一次写I/O端口操作所需时间之和;
(C)BIU完成一次访问存储器或I/O端口操作所需要的时间;
(D)BIU完成一次读和一次写存储器操作所需时间之和。
13.8086CPU通过RESET引脚上的触发信号来引起系统复位和启动,复位时代码段寄存器CS=0FFFFH,指令指针IP=0000H。
重新启动后,从物理地址为FFFF0H的地方开始执行指令。
14.8086CPU数据总线信号的状态是C。
(A)单向双态(B)单向三态(C)双向三态(D)双向双态
15.标志寄存器PSW中控制CPU的INTR引脚的标志位是C。
(A)TF(B)DF(C)IF(D)ZF
16.已知段地址和偏移地址分别为2015H和0028H,此存储单元的物理地址是什么?
答:
存储单元的物理地址:
20150H+0028H=20178H
17.因为8086CPU的字数据既可以存放在内存的偶地址单元,也可以安排在奇地址单元,所以其堆栈指针SPA。
A.最好指向偶地址单元B.可以指向任何地址单元
C.只能指向偶地址D.只能指向奇地址
18.在8086CPU中,数据地址引脚A采用时分复用。
A.AD0~AD15B.AD0~AD9C.AD0~AD20D.AD10~AD2
19.8086CPU把1MB空间划分为若干逻辑段,每段最多可含D的存储单元。
A.1KBB.8KBC.16KBD.64KB
20.设DS=1000H,ES=2000H,SS=3000H,SI=0010H,BX=0100H,BP=0200H,数据段中变量名为VAL的偏移地址值为0030H,写出下列指令源操作数字段的寻址方式和物理地址值:
MOVAX,VAL寻址方式直接寻址,物理地址10030H。
MOVAX,ES:
[BX]寻址方式寄存器间接寻址,物理地址20100H。
MOVAX,VAL[BP][SI]寻址方式相对基址变址寻址,物理地址30240H。
说明:
①以BX寄存器间接寻址,则默认的段是DS:
例如:
MOVAX,[BX]
以BP寄存器间接寻址,则默认的段是SS:
例如:
MOVAX,[BP]
②同样相对基址变址寻址也是有两种情况:
若BX提供基地址,则默认为DS段,即数据段;
若:
BP提供基地址,则默认为SS段,即堆栈段;
21.8086CPU的标志寄存器中状态标志位有D个。
(A)3(B)4(C)5(D)6
22.8086CPU可寻址访问的最大I/O空间为B。
(A)1KB(B)64KB(C)640KB(D)1MB
23.8086CPU可用于间接寻址的寄存器有B。
(A)AX,BX,CX,DX(B)SI,DI,BX,BP
(C)DS,SI,ES,DI(D)SP,IP,CS,DS
24.在8086CPU中,一个最基本的总线周期由4个时钟周期(T状态)组成,在T1状态,CPU在总线发出C信息。
(A)数据(B)状态(C)地址(D)其他
25.8086CPU中指令队列可存储C个字节的指令代码。
(A)4(B)5(C)6(D)8
26.某EPROM芯片,其存储容量为512K×8位,该芯片的地址线和数据线数目为D。
(A)8,19(B)17,8(C)18,8(D)19,8
27.用8K×8位的RAM6264芯片组成64K字的存储子系统,需要多少芯片?
地址线中有多少位参与片内寻址?
至少需要多少位组合成片选信号?
答:
需要16个芯片,地址线中有13位参与片内寻址,至少需要4位组合成片选信号。
28.阅读程序段,指出运行结果
MOVCX,05H
MOVBX,00H
NEXT:
MOVAL,ARRAY[BX]
ADDAL,07H
DAA
MOVNEW[BX],AL
INCBX
LOOPNEXT
HLT
ARRAYDB43H,54H,65H,77H,89H
NEWDB5DUP(?
)
程序运行后,NEW开始的连续5个单元的内容依次为:
50H,61H,
72H,84H,96H。
29.标志寄存器PSW中控制CPU的INTR引脚的标志位是C。
(A)TF(B)DF(C)IF(D)ZF
30.8086CPU外部的数据总线和地址总线分别为C位。
A.16,16B.20,16C.16,20D.20,20
31.指令代码的地址存放在寄存器D中。
A.DS和SIB.BX和BPC.ES和DID.CS和IP
32.设字长为八位,有x=-1,y=124,则有:
[x+y]补=__0111011_______,[x-y]补=__________;
33.数制转换:
247.86=F7.DCH=_0011._____________BCD;
34.在8086CPU中,由于BIU和EU分开,所以_取指令____和_执行指令____可以重叠操作,提高了CPU的利用率;
35.8086的中断向量表位于内存的_00000H~003FFH______区域,它可以容纳__256__个中断向量,每一个向量占__4__个字节;
36.8086系统中,地址FFFF0H是__CPU复位以后执行第一条指令的_________________地址;
37.已有AX=E896H,BX=3976H,若执行ADDBX,AX指令,则结果BX,AX,标志位CF,OF,ZF各为何值?
答:
BX=220CH;AX=E896H;CF=1;0F=0;ZF=0;
38.源程序如下:
MOVCL,4
MOVAX,[2000H]
SHLAL,CL
SHRAX,CL
MOV[2000H],AX
试问:
j若程序执行前,数据段内(2000H)=09H,(2001H)=03H,则执行后有(2000H)=_39H____,(2001H)=_00H_____。
k本程序段的功能_将(2000H),(2001H)两组相邻单元中存放的未组合型BCD码压缩成组合型BCD码,并存放入(2000H)单元,0→(2001H)。
39.已知BX=7830H,CF=1,执行指令:
ADCBX,87CFH之后,BX=_0000H___________,标志位的状态分别为CF=___1____,ZF=__1_____,OF=__0______,SF=____0____。
40.源程序如下:
CMPAX,BX
JNCL1
JZL2
JNSL3
JNOL4
JMPL5
设AX=74C3H,BX=95C3H,则程序最后将转到哪个标号处执行?
试说明理由。
答:
74C3H
95C3H
DF00H
且有:
CF=1,ZF=0,SF=1,OF=1
所以程序转到L5处执行
41.设IBMPC微机内存中某个单元的物理地址是12345H,试完成下列不同的逻辑地址表示:
(1) 1234H:
_05__H
1200____H:
0345H
42.假设某程序执行过程中,(SS)=0950H,(SP)=64H,试问该用户程序的堆栈底部物理地址是多少?
答:
(SS)*10H+(SP)-1=09563H
43.设堆栈段寄存器(SS)=0E4BH,程序中设堆栈长度为200H个字节。
试计算出堆栈底部字单元物理地址,堆栈指针SP初始值(即堆栈中没有数据时)和SP初始值指向的物理地址。
答:
物理地址为:
0E4B0H-1,SP的初始值为200,指向的物理地址为:
0E4B0H
44.对于由8086CPU组成的系统,堆栈的位置如何确立?
堆栈的首址(即:
SS中的值)是不是栈底?
为什么?
答:
8086系统中堆栈的位置由SS、SP初始化后确立:
其中(SS)*16决定了堆栈起始单元的地址,即堆栈首地址;(SS)*16+(SP初值)-1决定了堆栈段最后一个单元的地址,即堆底;(SS)*16+(SP现值)决定了堆栈段当前段栈顶。
显然,堆栈首地址并不是栈底。
一般来说,在堆栈所在的内存区域内,栈底为高地址端。
堆栈初始化后,栈顶指向栈底+1单元的偏移地址。
当堆栈压入数据后,栈顶地址总是小于栈底地址(因为一次压入两个字节数据),位于低地址端。
45.设8255A的4个端口地址分别为0C0H、0C2H、0C4H和0C6H,要求用按位置位/复位控制字使PC6输出方波信号,试编程实现。
解:
MOVDX,0C0H
MOVAL,80H
OUTDX,AL
L1:
MOVAL,0CH
OUTDX,AL
NOP
NOP
MOVAL,0DH
OUTDX,AL
NOP
NOP
JMPL1
46.设8255A接到系统中,端口A、B、C及控制口地址分别为220H、222H、224H及226H,工作在方式0,试编程将端口B的数据输入后,从端口C输出,同时,将其取反后从端口A输出。
解:
MOVDX,226H
MOVAL,82H
OUTDX,AL
MOVDX,AL
MOVAL,222H
INAL,DX
MOVDX,224H
OUTDX,AL
NOTAL
MOVDX,220H
OUTDX,AL
47.中断类型码和中断向量之间有什么关系?
答:
处理机可处理的每种中断的编号称为中断类型码,中断向量是指中断处理程序的入口地址,由处理机自动寻址,中断向量表是存放所有类型中断处理程序入口地址的一个默认内存区域,在8086系统中,中断类型码乘4得到向量表的入口,从此处读出4字节内容即为中断向量。
48.试绘图说明LED数码管显示器的动态显示原理.
答:
使用书上的图7.8
在图中LED数码管是共阴极的,总共可带动8位这样的LED数码管。
动态驱动显示接口与静态驱动显示接口一个明显特点是:
动态驱动法将多位LED同名段的选择线都并联在一起,即8位中的所有同名段a接在一起,所有b段都接在一起、、、、,这样只要一个8位的锁存器来控制段码a,b,c,d,e,f,g就够了。
另外用一个锁存器来控制点亮的位。
因此需要两个8位的I/O端口。
由于所有位的位选择码是用一个I/O端口来控制,所有段的段选择码也是有一个I/O端口控制,因此在每个瞬间,8位LED只可能显示相同的字符。
要想每位显示不同的字符,必须采用扫描的显示方式。
即在每一瞬间只能是某一位显示相应的字符,再次瞬间,由位选择控制的I/O端口要在要显示的位上送入选通电平(共阴极接法送入低电平,共阳极接法送入高电平),以保证要改位显示字符;再由段选择控制的I/O端口输出相应字符的段选择码。
如此循环下去,使每位都显示该位应显示的字符,并保持延时一段时间,然后再选中下一位,利用发光显示器的余晖及人眼的视觉残留效应,给人一种显示器被同时点亮的感觉,段选择码,为选择码在每送入一次后一般需要延时1~5ms时间。
49.试分别指出下列各指令语句的语法是否有错,如有错,指明是什么错误。
(1)MOV[BX][BP],AX错,应将BP,BX其中之一改为SI或DI
(2)TEST[BP],BL正确
(3) ADDSI,ABHABH改为0ABH
(4)ANDDH,DL正确
(5)CMPCL,1234H错,是字操作,CL改为CX
(6)SHR[BX][DI],3移位数大于1时,应用CL
(7) NOTCX,AX错,NOT指令只有一个操作数
(8) LEADS,35[SI]错,LEA指令的源操作数应为一内存单元地址
(9) INCCX,1错,此指令不用指出1
(10)PUSH45[DI]45改为45H
50.试分别说明下列各指令中源操作数和目的操作数使用的寻址方式:
(1) ANDAX,0FFH
(2) ANDBL,[OFFH]
(3) MOVDS,AX
(4) CMP[SI],CX
(5) MOVDS:
[0FFH],CL
(6) SUB[BP][SI],AH
(7) ADCAX,0ABH[BX]
(8) ORDX,-35[BX][DI]
(9) PUSHDS
(10)CMC
答:
目的操作数源操作数
(1)寄存器直接寻址立即数寻址
(2)寄存器直接寻址直接寻址
(3)寄存器直接寻址寄存器直接寻址
(4)寄存器间接寻址寄存器直接寻址
(5)直接寻址寄存器直接寻址
(6)基址变址寻址寄存器直接寻址
(7)寄存器直接寻址寄存器相对寻址
(8)寄存器直接寻址基址变址相对寻址
(9)无寄存器直接寻址
(10)隐含寻址
51.已知(DS)=09lDH,(SS)=1E4AH,(AX)=1234H,(BX)=0024H,(CX)=5678H,(BP)=0024H,(SI)=0012H,(DI)=0032H,(09226H)=00F6H,(09228H)=1E40H,(1E4F6H)=091DH。
下列各指令或程序段分别执行后的结果如何?
(1) MOVCL,20H[BX][SI]
(2) MOV[BP][DI],CX
(3) LEABX,20H[BX][SI]
MOVAX,2[BX]
(4) LDSSI,[BX][DI]
MOV[SI],BX
(5) XCHGCX,32H[BX]
XCHG20H[BX][SI],AX
答
(1)
(2)(09226H)=5678H
(3)(AX)=1E40H
(4)(1E4F6H)=0024H
(5)(09226H)=1234H,(AX)=5678H
52.如果TABLE为数据段中0032单元的符号名,其中存放的内容为1234H,当执行指令”MOVAX,TABLE”和”LEAAX,TABLE”后,(AX)中的内容分别为多少?
答:
执行MOVAX,TABLE后(AX)=1234H
执行LEAAX,TABLE后(AX)=0032.
53.堆栈存取操作是以字节为单位的.试分析当堆栈存入数据和从堆栈取出数据时SP的变化?
答:
当堆栈存入一个字时,(SP)<—SP-2
从堆栈中取出一个字时(SP)<—SP+2
54.试编写汇编程序段完成以下功能:
求最大值,若自BLOCK开始的内存缓冲区中,有100个带符号的数,希望找到其中最大的一个值,并将它放到MAX单元中。
55.假定(SS)=2000H,(SP)=0100H,(AX)=2107H,执行指令PUSHAX后,存放数据21H的物理地址是多少?
答:
200FFH
56.编一初始化程序,使8255A的PC5端输出一个负跳变。
如果要求PC5端输出一个负脉冲则初始化程序又是什么情况?
57.在8086的外部扩展一片8255芯片,其中,PA口接8个开关K7~K0,PB口接8个指示灯LED7~LED0。
当开关合上时相应的指示灯点亮,断开时灯灭。
并且,每当开关(任意开关)合上或断开一次,8255的PC5口的输出电平就变化一次;
要求:
1试画出其接线原理图(可不考虑指示灯的驱动);
2计算出8255各口的物理地址;
3编写完整的控制程序(包括8255的初始化);
58.8086通过一片8255控制4位数码管,数码管采用动态显示。
a.试画出接线原理图;
b.计算出8255的口地址;
c.编写8255初始化程序;
e.设置一个显示缓冲区,并将缓冲区内的1,2,3,4送显示;
f.并完成动态扫描程序;
59.8255的A口接了8个发光二极管,并围成一圈,要求只有一个发光管亮;依次循环发光(跑马灯)。
①完成与8086的详细接线图;
②计算出8255的口地址;
③编写完成该功能控制程序;
说明:
循环延时可以采用软件延时,时间间隔大约1秒;
60.8086的中断向量表B。
(A)用于存放中断类型号(B)用于存放中断服务程序入口地址
(C)是中断服务程序的入口(D)是中断服务程序的返回地址
61.设状态端口地址为86H,数据端口地址为87H,外部输入信息准备好状态标志为D7=1.请用查询方式写出读入外部信息的程序段。
62.编程序使:
(1)AX寄存器低4位清零。
(2)BX寄存器低4位置“1”。
(3)CX寄存器低4位变反。
(4)用TEST指令测试DL寄存器位3、位6是否同时为0,若是,将0送DL;否则l送DH。
63.下面两条指令执行后,标志寄存器中CF,AF,ZF,SF和OF分别是什么状态?
MOVDL,86
ADDDL,0AAH
64.8255A有几种工作方式?
若口A工作于方式1,时序图如下图所示,对照时序图叙述其工作原理。
(东南大学1999年研究生试题)
65.在下列伪指令中定义字节变量的是A。
(A)DB(B)DW(C)DD(D)DT
66.现行数据段位于存储器BOOOOH到BOFFFH字节单元,则段寄存器DS的内容及该段长度(字节数)分别为:
A
(A)BOOOH,1000H(B)O0OOH,OFFFH
(C)BOOOH,OFFFH(D)BOOOH,OOFFH
67.8086CPU的硬件中断引脚有B个。
(A)1个(B)2个(C)3个(D)4个
68.什么是逻辑地址?
什么是物理地址?
它们之间的关系如何?
答:
逻辑地址:
由段基址与段内偏移地址组成的表示存储单元地址。
物理地址:
用20位二进制编号表示存储单元地址。
物理地址=段基址×16+段内偏移地址。
69.什么是对准字和未对准字?
若有一个数据字7E3BH的地址为30101H,试画出它在字节编址的内存中的存放情况,并简述CPU读取这个字的过程。
答:
低字节在偶地址单元的叫对准字,高字节在偶地址单元的叫没有对准的字,数据字7E3BH的低字节3B在30101H单元,高字节7E在30102H单元,CPU读取这个数据字需分两步,第一步通过D15~D8读取3B,第二步通过D7~D0读取7E。
70.
什么叫补码?
在计算机中为什么要采用补码运算?
71.某存储芯片有12根地址线、8根数据线,请回答如下问题:
①该芯片有多少个存储单元?
4K
②每个存储单元存放多少位二进制数?
8bit
③用十六进制写出它的首地址和末地址。
0000H,0FFFH
72.现将以AREA1为首地址的100个字节数据搬移到以AREA2为首地址的内存中去,试编写程序。
73.统计以BUFFER为起始地址的100个字节单元中负数的个数,并将统计出来的负数个数送num单元。
试编写程序。
74.求从TABLE开始的10个无符号字节数的和,结果存放在SUM的字单元中,试编写程序。
75.在存储单元中存放三个无符号的数据86H,34H,21H,编写S=86H×34H-21H。
76.编程序计算:
SUM=3*(X+Y)+(Y+Z)/(Y-Z)。
其中,X、Y、Z都是16位无符号数,假设运算过程中间结果都不超出16位二进制数的范围,要求结果存入SUM中。
77.内存自TABLE开始的连续16个单元中存放着0-15的平方值,查表求DATA1中任意数X(0≤X≤15)的平方值,并将结果放RESULT中。
78.在8086CPU的寄存器组中,在对存储器单元进行间接寻址时,可作为基址寄存器的为、,用于变址寄存器有、;对I/O端口地址进行访问时,用到的间址寄存器为。
79.微型计算机是以为核心,配上、和系统总线组成的计算机。
80.在指令MOVAL,[SI+10H]中,源操作数采用的寻址方式为。
81.对8086系统复位后CPU应从内存______________处开始执行指令。
82.某一半导体存储器芯片的地址线引脚为AO—A12,数据线引脚为DO—D7,则该芯片的容量为______________。
83.计算机内的堆栈是一种特殊的数据存储区,对它的存取采用的原则。
84.按存储器用途分类,可以分成内部存储器和外部存储器。
内存储器按性质分,可分为________________和__________________。
85.微型计算机中采用总
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 作业 答案