微机接口课后答案.docx
《微机接口课后答案.docx》由会员分享,可在线阅读,更多相关《微机接口课后答案.docx(80页珍藏版)》请在冰豆网上搜索。
微机接口课后答案
第一章
1.什么是冯·诺依曼机?
答:
冯·诺依曼于1945年提出了存储程序的概念和二进制原理,利用这种概念和原
理设计的电子计算机系统统称为冯·诺依曼机。
它包括运算器、控制器、存储器、输入设备和输出设备五个组成部分。
早期的冯·诺依曼机结构上以运算器和控制器为中心,随着计算机体系结构的发展,
现在已演化为以存储器为中心的结构。
2.微处理器,微型计算机,微型计算机系统有什么联系与区别?
答:
微处理器是微型计算机系统的核心,也称为CPU(中央处理器)。
主要完成:
①从存储
器中取指令,指令译码;②简单的算术逻辑运算;③在处理器和存储器或者I/O之间传送数
据;④程序流向控制等。
微型计算机由微处理器、存储器、输入/输出接口电路和系统总线组成。
以微型计算机为主体,配上外部输入/输出设备及系统软件就构成了微型计算机系统。
三者关系如下图:
3.微处理器有哪些主要部件组成?
其功能是什么?
答:
微处理器是一个中央处理器,由算术逻辑部件ALU、累加器和寄存器组、指令指针寄
存器IP、段寄存器、标志寄存器、时序和控制逻辑部件、内部总线等组成。
算术逻辑部件ALU主要完成算术运算及逻辑运算。
累加器和寄存器组包括数据寄存器和变址及指针寄存器,用来存放参加运算的数据、
中间结果或地址。
指令指针寄存器IP存放要执行的下一条指令的偏移地址,顺序执行指令时,每取一条
指令增加相应计数。
段寄存器存放存储单元的段地址,与偏移地址组成20位物理地址用来对存储器寻址。
标志寄存器flags存放算术与逻辑运算结果的状态。
时序和控制逻辑部件负责对整机的控制:
包括从存储器中取指令,对指令进行译码和
分析,发出相应的控制信号和时序,将控制信号和时序送到微型计算机的相应部件,使CPU
内部及外部协调工作。
内部总线用于微处理器内部各部件之间进行数据传输的通道。
4.画一个计算机系统的方框图,简述各部分主要功能。
答:
计算机系统由硬件(Hardware)和软件(Software)两大部分组成。
硬件是指物理上存在的各种设备,如显示器、机箱、键盘、鼠标、硬盘和打印机等,
是计算机进行工作的物质基础。
软件是指在硬件系统上运行的各种程序、数据及有关资料。
一个完整的计算机系统不仅应该具备齐全的基本硬件结构,还必须配备功能齐全的基
本软件系统,后者是为了充分发挥基本硬件结构中各部分的功能和方便用户使用计算机而编
制的各种程序,一般称为计算机的软件系统。
5.5、列出计算机系统中的三种总线结构,画出面向存储器的双总线结构图。
答:
(1)面向系统的单总线结构
(2)面向CPU的双总线结构
(3)面向主存储器的双总线结构
6、答:
8086微处理器有20条地址线,可寻址220=1MB存储器
PentiumII处理器有36条地址线,可寻址236=64GB存储
7、什么是PCI总线?
什么是USB?
答:
PCI总线是微处理机机箱内的底板
各个插件板的一种数据传输标准。
PCI全称为PeripheralComponen
2/64位标准总线。
数据传输速率为132MB/s,适用于Pentium微型机。
PCI总线是同步
且独立于微处理器的,具有即插即用的特性,允许任何微处理器通过桥接口连接到PCI总
线上。
USB
与系统之间,系统与外部设备之间的信息通道。
USB是在1994年底由英特尔、康柏、
IBM、Microsoft等多家公司联合提出的,不过直到近期,才得到广泛应用,已成为目前电脑
中的标准扩展接口。
USB接口支持设备的即
立供电等优点。
8.说明以下一些伪
(1)DB
(2)DQ(3)DW
答:
(1)在汇编语言中定义字节数据。
(2)在汇编语言中定义4字数据。
(3)在汇编语言中定义字数据。
(4)在汇编语言中定义双字数据。
9.将下列二进制数转换为十进制数。
(1)1101.01B
(2)111001.0011B
(3)101011.0101B(4)111.0001B
答:
(1)13.25
(2)57.1875
(3)43.3125(4)7.0625
10.将下列十六进制数转换为十进制
(1)A3.3H
(2)129.CH
(3)AC.DCH(4)FAB.3H
答:
(1)163.1875
(2)297.75
(3)172.859375(4)4011.18
11.将下列十进制数转换为二进制、八
(1)23
(2)107(3)1238(4)92
答:
(1)23D=27Q=17H
(2)107D=153Q=6
(3)1238D=2326Q=4D6H(4)92D=134Q=5CH
12.将下列十进制数转换为8位有符号二进制数。
(1)+32
(2)-12(3)+100(4)-9
答:
(1)[+32]原=[+32]反=[+32]补=00100000B
(2)[-12]原=10001100B[-12]反=11110011B
(3)[+100]原=[+100]反=[+100]补=01100100B
(4)[-92]原=11011100B[-92]反=10100011B
13.将下列十进制数转换为压缩和非压缩格式的BCD码。
(1)102
(2)44(3)301(4)1000
答:
(1)[102]压缩BCD=0000000100000010B
[102]非压缩BCD=00000001000000000
(2)[44]压缩BCD=01000100B
[44]非压缩BCD=000001000
(3)[301]压缩BCD=0000001100000001B
[301]非压缩BCD=00000011000000000
(4)[1000]压缩BCD=0001000000000000B
[1000]非压缩BCD=00000001000000000
14.将下列二进制数转换为有符号十进制数。
(1)10000000B
(2)00110011B(3)
答:
(1)看作原码时真值为-0,看作反码时真值为-127,看作补码时真值为-128
(2)+51
(3)看作
(4)看作原码时真值为-9,看作反码时真值为-118,看作补码时真值为-119
将下列十进制数转换为单精度浮点数。
(1)+1.5
(2)-10.625(3)+100.2
答:
(1)+1.5=1.1B=1.1×20,符号为0,移码阶127+0=127=0111111
尾数10000000000000000000000
故单精度浮点数为0011111111000
-10.625=-1010.101B=-1.010101×23,符号为1,
移码阶127+3=130=10000010B,尾数010101000
故单精度浮点数为110000010010101000000000000000
(3)+100.25=1100100.01B=1.10010001×26,符号为0
移码阶127+6=133=10000101B,尾数1001000100
故单精度浮点数为01000010110010001000000000000000
(4)-1200=-10010110000B=-1.0010110000×210,符号为1
移码阶127+10=137=10001001B,尾数0010110000000
故单精度浮点数为11000100100101100000000000000000
16.将下列单精度浮点数转换为十进制数。
(1)01000000011000000000000000000000
(2)10111111100000000000000000000000
(3)01000000010010000000000000000000
答:
(1)1.11×21=11.1B=+3.5D
(2)-1.0×20=-1B=-1D
(3)1.1001×21=11.001B
第二章
1.8086CPU内部由哪两部分组成?
它们的主要功能是什么?
答:
8086CPU内部由执行单元EU和总线接口单元BIU组成。
主要功能为:
执行单元EU负责执行指令。
它由算术逻辑单元(ALU)、通用寄存器组、
16位标志寄存器(FLAGS)、EU控制电路等组成。
EU在工作时直接从指令流队列中取指令
代码,对其译码后产生完成指令所需要的控制信息。
数据在ALU中进行运算,运算结果
的特征保留在标志寄存器FLAGS中。
总线接口单元BIU负责CPU与存储器和I/O接口之间的信息传送。
它由段寄存
器、指令指针寄存器、指令队列、地址加法器以及总线控制逻辑组成。
2.8086CPU中有哪些寄存器?
各有什么用途?
答:
8086CPU内部包含4组16位寄存器,分别是通用寄存器组、指针和变址寄存器、段寄
存器、指令指针和标志位寄存器。
(1)通用寄存器组包含4个16位通用寄存器AX、BX、CX、DX,用以存放普通
数据或地址,也有其特殊用途。
如AX(AL)用于输入输出指令、乘除法指令,BX在间接
寻址中作基址寄存器,CX在串操作和循环指令中作计数器,DX用于乘除法指令等。
(2)指针和变址寄存器BP、SP、SI和DI,在间接寻址中用于存放基址和偏移地址。
(3)段寄存器CS、DS、SS、ES存放代码段、数据段、堆栈段和附加段的段地址。
(4)指令指针寄存器IP用来存放将要执行的下一条指令在现行代码段中的偏移地址。
(5)标志寄存器Flags用来存放运算结果的特征。
3.8086CPU和8088CPU的主要区别是什么?
答:
8088CPU的内部结构及外部引脚功能与8086CPU大部分相同,二者的主要不同之处如
下:
(1)8088指令队列长度是4个字节,8086是6个字节。
(2)8088的BIU内数据总线宽度是8位,而EU内数据总线宽度是16位,这样对16
位数的存储器读/写操作需要两个读/写周期才能完成。
8086的BIU和EU内数据总线宽度都
是16位。
(3)8088外部数据总线只有8条AD7~AD0,即内部是16位,对外是8位,故8088
也称为准16位机。
(4)8088中,用MIO/信号代替IOM/信号。
(5)8088中,只能进行8位数据传输,BHE不再需要,改为0SS,与RDT/和MIO/
一起决定最小模式中的总线周期操作。
4.简要解释下列名词的意义:
CPU,存储器,堆栈,IP,SP,BP,段寄存器,状态标志,
控制标志,物理地址,逻辑地址,机器语言,汇编语言,指令,内部总线,系统总线。
答:
CPU:
中央处理器,是整个计算机系统的控制中心,主要功能是进行算术和逻辑运算,
以及发出各种控制信号以协调整个系统正常工作。
存储器:
是计算机系统中的记忆元件,用于存储指令和数据。
堆栈:
在存储器中开辟的一个区域,用来存放需要暂时保存的数据。
其操作特点是先
进后出。
IP:
指令指针寄存器,用来存放将要执行的下一条指令在现行代码段中的偏移地址。
SP:
堆栈指针寄存器,用于指向当前栈顶单元。
BP:
基址指针,间接寻址中用于存放基址,隐含段地址为SS。
段寄存器:
用于存放逻辑段的段地址。
状态标志:
SF、ZF、OF、AF、PF和CF,反映运算结果的状态特征。
控制标志:
IF、DF和TF,对可屏蔽中断、字符串操作指针变换方向和单步运行起控制
作用。
物理地址:
指存储器中存储单元的实际地址编码,是一种绝对地址,是CPU访问存储
器的实际寻址地址,对于8086系统,地址范围为00000H~FFFFFH。
逻辑地址:
由段基址和偏移地址组成,均为无符号的16位二进制数,程序设计时采用
逻辑地址,可由逻辑地址变换为物理地址,物理地址=段基址×16+偏移地址。
机器语言:
直接用二进制代码指令表达的计算机语言,指令是用0和1组成的一串代
码,计算机可以直接识别,不需要进行任何翻译。
每台机器的指令,其格式和代码所代表的
含义都是硬性规定的,故称之为面向机器的语言,也称为机器语言,是第一代计算机语言。
汇编语言:
使用助记符表示的二进制代码指令语言,是一种符号化的机器语言,必须
经编译程序将汇编语言编译成机器语言,计算机才能识别。
指令:
能被计算机识别并执行的二进制代码,规定了计算机能完成的某一操作。
内部总线:
微处理器内部各个部件之间传送信息的通道。
系统总线:
微处理机机箱内的底板总线,用来连接构成微处理机的各个插件板,如ISA
总线、EISA总线、PCI总线等。
5.要完成下述运算或控制,用什么标志位判别?
其值是什么?
(1)比较两数是否相等
(2)两数运算后结果是正数还是负数
(3)两数相加后是否溢出(4)采用偶校验方式,判定是否要补1
(5)两数相减后比较大小(6)中断信号能否允许
答:
(1)ZF,两数相减,若ZF=1,则相等。
(2)SF,SF=1则为负,否则为正
(3)对有符号数:
OF,OF=1为溢出;对无符号数:
CF,CF=1为溢出
(4)PF,PF=1,不补1
(5)对有符号数:
无溢出时(OF=0),如ZF=1,则两数相等;如ZF=0且SF=0,则
被减数大;如ZF=0且SF=1,则减数大;有溢出时(OF=1),如SF=1,则被减数大;如
SF=0,则减数大;对无符号数:
如ZF=1,则两数相等;如CF=0,则被减数大;如CF=1,
则减数大
(6)IF,IF=1,允许中断
6.8086系统中存储器采用什么结构?
用什么信号来选中存储体?
答:
8086系统中,存储器采用分体结构,1MB的存储空间分成两个存储体:
偶地址存储体
和奇地址存储体,各为512KB。
使用A0和BHE来区分两个存储体。
当A0=0时,选中偶地址存储体,与数据总线低8
位相连,从低8位数据总线读/写一个字节。
当BHE=0时,选中奇地址存储体,与数据总线高8位相连,从高8位数据总线读/写
一个字节。
当A0=0,BHE=0时,同时选中两个存储体,读/写一个字。
7.用伪指令DB在存储器中存储ASCII码字符串“Whattimeisit?
”。
并画出内存分布图。
答:
8.用伪指令将下列16位二进制数存储在存储器中,并画出内存分布图。
(1)1234H
(2)A122H(3)B100H
答:
NUMDW1234H,A122H,B100H
9.段寄存器装入如下数据,写出每段的起始和结束地址。
(1)1000H
(2)1234H(3)2300H(4)E000H(5)AB00H
答:
(1)10000H~1FFFFH
(2)12340H~2233FH
(3)23000H~32FFFH
(4)E0000H~EFFFFH
(5)AB000H~BAFFFH
10.根据下列CS:
IP的组合,求出要执行的下一条指令的存储器地址。
(1)CS:
IP=1000H:
2000H
(2)CS:
IP=2000H:
1000H
(3)CS:
IP=1A00H:
B000H(4)CS:
IP=3456H:
AB09H
答:
(1)12000H
(2)21000H(3)25000H(4)3F069H
11.求下列寄存器组合所寻址的存储单元地址:
(1)DS=1000H,DI=2000H
(2)SS=2300H,BP=3200H
(3)DS=A000H,BX=1000H(4)SS=2900H,SP=3A00H
答:
(1)12000H
(2)26200H(3)A1000H(4)2CA00H
STR
NUM
7850:
0000
12.若当前SS=3500H,SP=0800H,说明堆栈段在存储器中的物理地址,若此时入栈10个
字节,SP内容是什么?
若再出栈6个字节,SP为什么值?
答:
物理地址:
35000H~35800H。
入栈10个字节后SP为7F6H。
再出栈6个字节后SP
为7FCH。
13.某程序数据段中存放了两个字,1EE5H和2A8CH,已知DS=7850H,数据存放的偏移
地址为3121H及285AH。
试画图说明它们在存储器中的存放情况。
若要读取这两个字,需
要对存储器进行几次操作?
答:
1EE5H的存储物理地址=78500H+3121H=7B621H,为奇数,故若要读取这个字,需要
对存储器进行两次读操作。
2A8CH的存储物理地址=78500H+285AH=7AD5AH,为偶数,故若要读取这个字,只
需对存储器进行一次读操作。
14.存储器中每段容量最多64K字节,若用debug调试程序中的r命令,在屏幕上有如下显
示:
C:
>debug
-r
AX=0000BX=0000CX=0079DX=0000SP=FFEEBP=0000SI=0000DI=0000
DS=10E4ES=10F4SS=21F0CS=31FFIP=0100NVUPDIPLNZNAPONC
(1)试画出此时存储器分段示意图
(2)写出状态标志OF、SF、ZF、CF的值
答:
(1)代码段首地址:
31FF0H当前指令地址:
320F0H
数据段首地址:
10E40H
堆栈段首地址:
21F00H堆栈段栈顶地址:
31EEEH
附加段首地址:
10F40H
(2)OF=SF=ZF=CF=0
15.说明8086系统中“最小模式”和“最大模式”两种工作方式的主要区别是什么?
答:
为了便于组成不同规模的系统,在8086芯片中设计了两种工作模式,即最小模式和最
大模式。
最小模式用于单机系统,系统中所需要的控制信号全部由8086直接提供;最大模式用
于多处理机系统,系统中所需要的控制信号由总线控制器8288提供。
16.8086系统中为什么要用地址锁存器?
8282地址锁存器与CPU如何连接?
答:
为了减少引脚的数量,8086CPU的地址引脚和数据引脚分时复用,为了保证在总线操
作周期中地址信号能有效而稳定的输出,必须使用地址锁存器。
7850:
285A
7850:
3121
由于8086有20条地址线,故需使用三片8282,其中OE接地,STB与CPU的ALE
相连,前两片8282的DI0~DI7分别与CPU的AD0~AD15相连,第三片8282的DI0~DI3分别
与CPU的AD16~AD19相连,DI4与CPU的BHE相连。
17.哪个标志位控制CPU的INTR引脚?
答:
IF,中断允许标志,IF=1时,允许可屏蔽中断,IF=0时,禁止可屏蔽中断。
18.什么叫总线周期?
在CPU读/写总线周期中,数据在哪个机器状态出现在数据总线上?
答:
CPU完成一次存储器访问或I/O端口操作所需要的时间称为一个总线周期,由几个T
状态组成。
在读/写总线周期中,数据在T2~T4状态出现在数据总线上。
19.8284时钟发生器共给出哪几个时钟信号?
答:
OSC:
振荡器输出信号,是内部振荡电路的TTL电平输出,其频率与晶振的频率相等,
在PC/XT中,其频率为14.318MHz
CLK:
三分频OSC后的时钟,输出频率为4.77MHz,占空比为1/3,供8086CPU使用。
PCLK:
二分频CLK后的时钟,输出频率为2.38636MHz,TTL电平,占空比为1/2,
供PC/XT机的外设使用。
20.8086CPU重新启动后,从何处开始执行指令?
答:
重新启动后,CS=FFFFH,IP=0000H,故从物理地址为FFFF0H的位置开始执行指令。
21.8086CPU的最小模式系统配置包括哪几部分?
答:
8086最小模式系统配置包括:
8086CPU,存储器,I/O接口芯片,1片8284时钟发生器,3片8282地址锁存器,2片
8286双向数据总线收发器。
第五章
1.静态RAM与动态RAM有何区别?
答:
(1)静态RAM内存储的信息只要电源存在就能一直保持,而动态RAM的信息需要定
时刷新才能保持
(2)静态RAM的集成度比较低,运行速度快,而动态RAM的集成度高,运行相对较
慢
(3)静态RAM造价成本高,动态RAM价格便宜
2.ROM、PROM、EPROM、EEPROM在功能上各有何特点?
答:
ROM是只读存储器,根据写入方式的不同可以分为四类:
掩膜型ROM、PROM、EPROM
和EEPROM。
掩膜型ROM中信息是厂家根据用户给定的程序或数据,对芯片图形掩膜进行两次光刻
而写入的,用户对这类芯片无法进行任何修改。
PROM出厂时,里面没有信息,用户采用
一些设备可以将内容写入PROM,一旦写入,就不能再改变了,即只允许编程一次。
EPROM可编程固化程序,且在程序固化后可通过紫外光照擦除,以便重新固化新数据。
EEPROM可编程固化程序,并可利用电压来擦除芯片内容,以重新编程固化新数据。
3.DRAM的CAS和RAS输入的用途是什么?
答:
CAS为列地址选通信号,用于指示地址总线上的有效数据为列地址;RA行地址选
通信号,用于指示地址总线上的有效数据为列地址。
4.什么是Cache?
作用是什么?
它处在微处理机中的什么位置?
答:
Cache也称为高速缓存,是介于主存和CPU之间的高速小容量存储器。
为了减少CPU与内存之间的速度差异,提高系统性能,在慢速的DRAM和快速CPU
之间插入一速度较快、容量较小的SRAM,起到缓冲作用,使CPU既可以以较快速度存取
SRAM中的数据,又不使系统成本上升过高,这就是Cache的作用。
Cache在微处理机中的位置如下图:
5.直接映像Cache和成组相联Cache的组成结构有什么不同?
答:
直接映象Cache是将主存储器中每一页大小分成和Cache存储器大小一致,Cache中
每一块分配一个索引字段以确定字段,这样可以通过一次地址比较即可确定是否命中,但如
果频繁访问不同页号主存储器时需要做频繁的转换,降低系统性能;
成组相联Cache内部有多组直接映象的Cache,组间采用全关联结构,并行地起着高
速缓存的作用。
访问时需要进行两次比较才能确定是否命中。
6.为什么要保持Cache内容与主存储器内容的一致性?
为了保持Cache与主存储器内容的
一致性应采取什么方法?
答:
由于Cache的内容只是主存部分内容的拷贝,故应当与主存内容保持一致。
数据不一致
问题通常是由于更新了Cache的数据而没有更新与其关联的存储器的数据,或更新了存储器
数据却没有更新Cache的内容所引起的。
为了保持Cache与主存储器内容的一致性,有两种写入策略:
(1)通写法
在此方法中,当CPU写入数据到Cache中后,Cache就立即将其写入主存中,使主存
始终保持Cache中的最新内容。
此方法简单,更新内容不会丢失,但每次对Cache的修改同
时要写入主存储器,总线操作频繁,影响系统性能。
(2)回写法
此方法中,Cache的作用好像缓冲区一样,当CPU写入数据到Cac