微机原理与接口技术 第5章课后作业答案
- 格式:ppt
- 大小:173.00 KB
- 文档页数:8
第五章5-1选择题1、6264芯片是(B)(A)EEPROM (B)RAM(C)FLASH ROM (D)EPROM2、用MCS-51用串行扩展并行I/O口时,串行接口工作方式选择(A)(A)方式0 (B)方式1 (C)方式2 (D)方式33、使用8255可以扩展出的I/O口线是(B)(A)16根(B)24根(C)22根(D)32根4、当8031外出扩程序存储器8KB时,需使用EPROM 2716(C)(A)2片(B)3片(C)4片(D)5片5、某种存储器芯片是8KB*4/片,那么它的地址线根线是(C)(A)11根(B)12根(C)13根(D)14根6、MCS-51外扩ROM,RAM和I/O口时,它的数据总线是(A)(A)P0 (B)P1 (C)P2 (D)P37、当使用快速外部设备时,最好使用的输入/输出方式是(C)(A)中断(B)条件传送(C)DMA (D)无条件传送8、MCS-51的中断源全部编程为同级时,优先级最高的是(D)(A)INT1 (B)TI (C)串行接口(D)INT09、MCS-51的并行I/O口信息有两种读取方法:一种是读引脚,还有一种是(A)(A)读锁存器具(B)读数据库(C)读A累加器具(D)读CPU 10、MCS-51的并行I/O口读-改-写操作,是针对该口的(D)(A)引脚(B)片选信号(C)地址线(D)内部锁存器5-2判断题1、MCS-51外扩I/O口与外RAM是统一编址的。
(对)2、使用8751且EA=1时,仍可外扩64KB的程序存储器。
(错)60KB3、8155的复位引脚可与89C51的复位引脚直接相连。
(对)4、片内RAM与外部设备统一编址时,需要专门的输入/输出指令。
(错)统一编址的特点正是无需专门的输入输出指令。
5、8031片内有程序存储器和数据存储器。
(错)无程序存储器6、EPROM的地址线为11条时,能访问的存储空间有4K。
(错)2K.7、8255A内部有3个8位并行口,即A口,B口,C口。
5.1 RAM和ROM的主要特点和区别是什么?【解答:】ROM (只读性存储器)的特点足在一般情况下,ROM屮的信息只能读出不能写入,ROM 屮的内客是非易失性的,掉电后信息也不会丢失。
RAM (随机存储器)的特点是K•内容在工作时既可以读出也可以随时写入,但是其中的内容是易失性的,棹电后信息会丢失。
5.2术语“非易失性存储器”足什么意思?PROM和EPROM分别代表什么意思?【解答:】“非易失性存储器”是指掉电后信息不会丢失。
PROM是可编程ROM, EPROM可擦除可编程ROM。
5.3何谓静态RAM?何谓动态RAM?他们的特点各足什么?【解答:】以双稳态电路作力基本存储申.元來保存信息的RAM称力静态RAM (SRAM),其特点是:只要不断电,信息不会丢失;访问速度快,但集成度较低,一般用于Cache采用SRAM。
以晶体管栅极电界的充放电来存储二进制信息的RAM称为动态RAM,其特点足:电界上的电荷会随吋间而泄露,因此DRAM需耍定吋刷新;DRAM集成度较高,因此行列地址线复用,一般闪存采用DRAM构成。
5.4较大容量的RAM为什么总是采用矩阵形式?【解答:】这种形式便于采用双译码结构,地址线分为行、列W部分,分开译码,可以极大的减少地址译码器的输出线,简化电路。
5.5下列RAM芯片各需要多少个地址引脚?(1)16Kxlb (2) lKx4b (3) 2Kx8b【解答:】分別是log216K = 14,log2lK 二10,log22K = ll 根5.6设有一个具有14位地址和8位字长的存储器,fuj:(1)该存储器能存储多少字节的信息?(2)如果存储器由IKxlb静态RAM芯片组成,需多少芯片?(3)需要多少位地址作芯片选择?(4)改用4Kx4b的芯八,试凼出与总线连接框图。
【解答:】(1)注意问的是:能存储多少字节已知存储器具冇14位地址,且8位字长,所以是214字节,即16K字节(16KB)。
第二章 8086体系结构与80x86CPU1.8086CPU由哪两部分构成?它们的主要功能是什么?答:8086CPU由两部分组成:指令执行部件(EU,Execution Unit)和总线接口部件(BIU,Bus Interface Unit)。
指令执行部件(EU)主要由算术逻辑运算单元(ALU)、标志寄存器FR、通用寄存器组和EU控制器等4个部件组成,其主要功能是执行指令。
总线接口部件(BIU)主要由地址加法器、专用寄存器组、指令队列和总线控制电路等4个部件组成,其主要功能是形成访问存储器的物理地址、访问存储器并取指令暂存到指令队列中等待执行,访问存储器或I/O端口读取操作数参加EU运算或存放运算结果等。
2.8086CPU预取指令队列有什么好处?8086CPU内部的并行操作体现在哪里?答:8086CPU的预取指令队列由6个字节组成,按照8086CPU的设计要求,指令执行部件(EU)在执行指令时,不是直接通过访问存储器取指令,而是从指令队列中取得指令代码,并分析执行它。
从速度上看,该指令队列是在CPU内部,EU从指令队列中获得指令的速度会远远超过直接从内存中读取指令。
8086CPU内部的并行操作体现在指令执行的同时,待执行的指令也同时从内存中读取,并送到指令队列。
5.简述8086系统中物理地址的形成过程。
8086系统中的物理地址最多有多少个?逻辑地址呢?答:8086系统中的物理地址是由20根地址总线形成的。
8086系统采用分段并附以地址偏移量办法形成20位的物理地址。
采用分段结构的存储器中,任何一个逻辑地址都由段基址和偏移地址两部分构成,都是16位二进制数。
通过一个20位的地址加法器将这两个地址相加形成物理地址。
具体做法是16位的段基址左移4位(相当于在段基址最低位后添4个“0”),然后与偏移地址相加获得物理地址。
由于8086CPU的地址线是20根,所以可寻址的存储空间为1M字节,即8086系统的物理地址空间是1MB。
判断题1.EPROM是指可擦除可编程随机读写存储器。
2.在查询方式下输入输出时,在I/O接口中设有状态寄存器,通过它来确定I/O设备是否准备好。
输入时,准备好表示已满;输出时,准备好表示已空。
3.无条件式的I/O是按先读状态口,再读数据口的顺序传送数据的。
4.I/O数据缓冲器主要用于协调CPU与外设在速度上的差异。
5.查询式输入输出是按先读状态端口,后读/写数据端口的顺序传送数据的。
6.连接CPU和外设的接口电路中必须要有状态端口。
7.总线是专门用于完成数据传送的一组信号线。
8.I/O接口的基本功能之一是完成数据的缓冲。
9.要实现微机与慢速外设间的数据传送,只能利用查询方式完成。
1) Y 2 ) Y3) Y4) Y 5) Y6) X 7) X 8)Y9) X1.单片8259A最多可接8个中断源。
2.在可屏蔽中断的嵌套原则中,不允许低级中断打断高级中断,但允许同级中断相互打断。
3.同一片8259的8个中断源的中断向量在中断向量表中可以不连续存放。
(不要求)4.利用8259A对外中断进行管理时,只能管理8个中断源。
5.在中断接口电路中,由中断请求寄存器来保存外设的中断请求信号。
6.8259A送给CPU的中断请求信号是通过INT发出的。
1Y 2X 3X 4X 5Y 6Y填空题1、在微机系统中,端口编址方式一般有___________和___________两种方式。
2、微机系统与外设间的信息交换方式有————、————、————和————.3.用2K×8的SRAM芯片组成32K×16的存储器,共需SRAM芯片()片。
4.为保证动态RAM中的内容不消失,需要进行( ) 操作。
5.构成64K*8的存储系统,需8K*1的芯片( )片。
1、统一编址,独立编址2、无条件,查询,中断,DMA3、324、定时刷新5、646、8086和8088的地址总线有()根,能寻址()MB的存储器空间。
7.8086CPU从偶地址中按字节读时,存储器数据进入数据总线的( ) ;从奇地址按字节读时,进入数据总线的( )。
微机原理与接口技术(楼顺天第二版)习题解答第5章总线及其形成5.1 微处理器的外部结构表现为数量有限的输入输出引脚,它们构成了微处理器级总线。
5.2 微处理器级总线经过形成电路之后形成了系统级总线。
5.3 答:总线是计算机系统中模块(或子系统)之间传输数据、地址与控制信号的公共通道,它是一组公用导线,是计算机系统的重要组成部分。
采用标准化总线的优点是:①简化软、硬件设计。
②简化系统结构。
③易于系统扩展。
④便于系统更新。
⑤便于调试与维修。
5.4 答:在微型计算机应用系统中,按功能层次可以把总线分成:片内总线、元件级总线、系统总线与通信总线。
5.5 答:RESET为系统复位信号,高电平有效,其有效信号至少要保持四个时钟周期,且复位信号上升沿要与CLK下降沿同步。
系统复位后的启动地址为0FFFF0H。
即:(CS)=0FFFFH,(IP)=0000H。
5.6 8086CPU复用的引脚有AD15~AD0、A16/S3、A17/S4、A18/S5、A19/S6、BHE/S7。
8088CPU复用的引脚有AD7~AD0、A16/S3、A17/S4、A18/S5、A19/S6、BHE/S7。
5.7 答:设置引脚复用主要是可以减少引脚数量。
CPU通过分时复用解决地址线与数据线的复用问题。
ALE为地址锁存使能信号在总线周期的T1周期有效,BHE为高8位数据线允许,在T1周期有效,需要锁存器锁存,在需要使用高8位数据线时使用。
5.8 答:高阻态可做开路理解。
可以把它看作输出(输入)电阻非常大。
5.9 答:RESET(Reset):复位信号,输入,高电平有效。
CPU 收到复位信号后,停止现行操作,并初始化段寄存器DS、SS、ES,标志寄存器PSW,指令指针IP与指令队列,而使CS=FFFFH。
RESET信号至少保持4个时钟周期以上的高电平,当它变成低电平时,CPU执行重启动过程,8086/8088将从地址FFFF0H开始执行指令。
微机原理与接口技术课后部分习题参考答案第一章2. 第3项任务,状态标志位的状态决定转移方向。
3. 程序存储是将要执行的程序的全部指令存储到存储器中,程序控制指程序开始执行后,通过指令流控制数据或计算机,完成设定的任务。
4. 分BIU 总线接口部件和EI执行部件两大部件,其中总线接口部件BIU负责取指令和数据,执行部件EI负责执行指令及运算。
在执行一条指令的同时可以取下一条指令,重叠运行,速度快。
5. 有6个状态标志,分别为进位标志CF、溢出标志OF、零标志ZF、奇偶标志PF、负标志SF、辅助进位标志AF。
3个控制标志分别为中断允许标志IF、单步标志TF、方向标志DF。
标志位的内容可以通过标志位操作指令来操作,例如CLC指令清除进位位,即使CF=0,STC指令使CF=1,CLI指令使IF=0,禁止中断,STI指令使IF=1,允许中断。
还可以通过LAHF指令取来标识寄存器的内容修改后用SAHF指令送回去。
也可以用PUSHF/POPF指令来修改标志寄存器的内容。
6. 实模式下分段靠4个段寄存器实现。
段寄存器中的值就是段地址,当偏移地址为0时的段地址+偏移地址就是该段的起始地址。
物理地址是由段地址左移4位后与偏移地址相加形成的20位地址。
7. 说法不一定正确。
对顺序执行指令的计算机是对的。
对重叠或流水线的计算机就不对了。
例如对8086CPU,由于采用了取指令与执行指令的一次重叠,尽管执行一条指令的总时间并没有变化,但连续执行n条指令时,总的时间会大大缩短,可以简单的比喻成总时间为原时间的二分之一,快了一倍。
8. 引入流水线后,执行一条指令的总时间并没有变化。
9. 高速缓存的目的是提高存储器的速度,进而提高了CPU的速度。
虚拟存储器的目的是为了给程序员或程序一个大的存储或运行空间。
10。
8086采用总线接口部件BIU与执行部件EU分开提高了速度,286将8086的BIU进一步分成3个部件,提高了并行性。
386在286基础上进一步增加成6个逻辑部件,实现多条指令重叠,进一步提高了速度,486采用硬组合逻辑控制器,同时采用内嵌高速缓存,提高速度。
第五章习题和答案一、单选题1.计算机的外围设备是指____A__。
A、输入/输出设备B、外存储器C、远程通信设备D、除了CPU和内存以外的其他设备2.下述I/O控制方式中,___C___主要由硬件实现。
A、程序传送方式B、中断方式C、DMA方式D、I/O处理机方式3.接口电路的最基本功能是____C__。
A、在CPU和外设间提供双向的数据传送B、反映外设当前的工作状态C、对传送数据提供缓冲功能D、对外设进行中断管理4.一个完整的DMA操作过程大致可分3个阶段,其中没有的阶段是___B___。
A、准备阶段B、总线控制阶段C、数据传送阶段D、传送结束阶段二、判断题1.把接口电路中CPU可以访问的每一个寄存器或控制电路称为一个I/O端口。
(T )2.采用统一编址方式时,CPU对I/O设备的管理是用访问内存的指令实现的。
(T )3.无条件传送是一种最简单的输入/输出传送,一般只用于简单、低速的外设的操作。
(T )4.中断方式的特点是改CPU的被动查询为主动响应。
(F )5.DMA控制器是一个特殊的接口部件,它有主、从两种工作状态。
(T )三、思考题1.外设为何必须通过接口与主机相连?存储器与系统总线相连需要接口吗?为什么?答: 外设都必须通过I/O接口电路与微机系统总线相连,因为CPU与外部设备通信在运行速度和数据格式上差异很大. 存储器与系统总线相连不需要接口.因为接口是用来连接微机和外设的一个中间部件,I/O接口电路要面对主机和外设两个方面进行协调和缓冲,存储器属于微机系统的组成部分.它们之间的数据传输是标准的、统一的没有必要通过接口.2.CPU与外设间传送的信号有哪几类?答: CPU与外设间传送的信息大致可分为以下3类: 数据信息(分为数字量,模拟量和开关量), 控制信息(CPU发出的用来控制外设工作的命令)和状态信息(用来反映输入、输出设备当前工作状态的信号).3. 常用的I/O端口编址方式有哪几种?各自的特点如何?答: 系统对I/O端口的地址分配有两种编址方式:统一编址和独立编址。
习题五1. 8255A的方式选择控制字和C 口按位控制字的端口地址是否一样,8255A怎样区分这两种控制字?写出A端口作为基本输入,B端口作为基本输出的初始化程序。
解:(1)8255A的方式选择控制字和 C 口按位控制字的端口地址一样,它们之间的区别在控制字的D7位(特征位)的值不同,8255A的方式选择控制字D7=1,而C 口按位置位/复位控制字D7=0。
(2) MOV MOV OUT 初始化程序:(设端口地址为, A 口:200H, B 口:201H,控制口:203H)AL, 90HDX 203HDX AL2. 用8255A的A端口接8位二进制输入,B端口和C端口各接8只发光二极管显示二进制数。
编写一段程序,把A端口读入的数据送B端口显示,而C端口的各位则采用置0/置1的方式显示A端口的值。
解:(设端口地址为,A 口:200H, B 口:201H, C 口:202H,控制口:203H)MOV AL,90H ;8255A初始化:MOV DX 203H ;8255A各组方式0 , A 口输入OUT DX AL ;B、C口输出MOV DX 200HIN AL , DX ;读A口输入值MOV DX 201HOUT DX AL ;送B 口输出MOV AH AL ;A 口输入值转存在AH中MOV DX 203HMOV CX 08 ;CX置循环次数初值MOV AL,00H ;C端口置0/置1控制字初值LPA AND AL,OFEH ;清除最低位SHR AH, 1 ;A端口一位转入CFADC AL, 0 ;A端口一位从CF转入命令字OUT DX AL ;A端口一位从送往C端口对应位ADD AL,02H ;形成下一个命令字LOOP LPA ;处理C端口下一位3. 将8255A用作两台计算机并行通信的接口电路,请画出采用查询式输入/输出方式工作的接口电路,并写出采用查询式输入/输出方式的程序。
解:用两片8255作两台计算机8088_A与8088_B之间并行通信的接口电路,两片8255之间的连接如下图所示。
2114: 128片,10位和6位。
6116: 32片,11位和5位。
6264: 8片,13位和3位。
5.42114:611662646.4stack segment stack 'stack'dw 32 dup(0)stack endscode segmentstart proc farassume ss: stack, cs: codepush dssub ax, axpush axCALL I6116 ;调用写入6116子程序MOV AH, 2 ;回车换行MOV DL, 0DHINT 21HMOV DL, 0AHINT 21HCALL O6116 ;调用读出6116子程序ret;写入6116:将键入字符的ASCII码写入6116I6116 PROCMOV BL, 0 ;定义页地址码(16个地址为一页)MOV CX, 128 ;定义页数LOP1: PUSH CXMOV DX, 380H ;将页地址从74LS273输出MOV AL, BLOUT DX, ALMOV CX, 16 ;定义页内单元数MOV DX, 390H ;将键入数写入16个单元LOP2: MOV AH, 1INT 21HOUT DX, ALINC DXLOOP LOP2INC BL ;换页POP CXLOOP LOP1 ;页数未满换页重新写入16个单元RETI6116 ENDP;读出6116:将写入6116的数据读出送显示O6116 PROCMOV BL, 0MOV CX, 128LOP3 PUSH CXMOV DX, 390HMOV AL, BLOUT DX, ALMOV CX, 16MOV DX 380H ;将16个单元的数据送显示LOP4: IN AL, DXPUSH DXMOV DL, AL ;将6116中读出的ASCII码送DLMOV AH, 2 ;2号功能调用显示DL中的字符INT 21HPOP DXINC DXLOOP LOP4INC BLPOP CXLOOP LOP3RETO6116 ENDPend start6.5stack segment stack 'stack'dw 32 dup(0)stack endscode segmentstart proc farassume ss: stack, cs: codepush dssub ax, axpush axMOV AH, 2 ;用2号功能调用输出字符,调用号送AHMOV CX, 100 ;字符个数送计数器MOV DX, 380HWAIT0: IN AL, DX ;从244读入TEST AL, 80H ;测试状态位是否为0JNZ WAIT0 ;不为0,等待继续测试状态WAIT1: IN AL, DX ;状态为0,继续读入TEST AL, 80H ;测试状态是否为1JZ WAIT1 ;不为1,等待继续测试状态IN AL, DX ;状态为1,读入数据即ASCII码AND AL, 7FH ;去掉状态位MOV DL, AL ;ASCII码送DL,输出字符INT 21HLOOP WAIT0-3 ;跳到给DX赋值380H的MOV指令,该指令为3字节retstart endpcode endsend start。