微机接口与通信作业
微机原理与接口技术试题集
前言微机原理与接口技术”是电类专业本科生的必修专业基础课。
该课程主要内容包括:计算机科学技术基础,计算机/微型计算机的组成与结构,微处理器结构,指令系统与汇编语言程序设计,存储器及其接口,输入/输出及DMA接口,中断系统,串并行通信及其接口电路,模拟接口,总线技术,80x86/Pentium保护模式的软件体系结构,高性能微处理器、常见的计算机外部设备等相关知识。
通过教学和实践,学生能掌握微型计算机的工作原理和系统结构,掌握微机测控系统的研发技术和基本方法,为今后的相关专业课程学习奠定了基础。
由于该课程内容不但包括了硬件知识,而且也包括了软件知识,相对讲覆盖知识面广、涉及的概念偏多,抽象难以理解、同时也由于其实践性强,要搞好该门课程教学,必须辅之大量练习题。
本书与我校微机原理与接口技术主流教材配套,目的在于指导学生学习、练习及考试(课程考试与考研),书中收集了大量的习题和答案,并同时也精选了一些自测题,内容简明扼要、重点突出,系统性、实用性较强,可以启迪学生思维,拓宽思路,弥补学生训练不足,教会学生其自动手能力,激发学生学习兴趣,使学生牢固掌握教材内容,并学以致用。
可作为课程学习和复习考研的辅导用书(必备资料),也可供从事微机应用系统开发的工程技术人员阅读参考。
全书由张坤鳌副教授组织编写,牟奇副教授参编,龚赏福教授、朱宇副教授在百忙中审阅了全书,并提出许多宝贵意见,在此本人表示衷心。
第一章微型计算机基础习题一1. 简述微型计算机系统的组成。
2. 简述计算机软件的分类及操作系统的作用。
3. 将下列十进制数转换成二进制数:(1) 49;(2)73.8125; (3) 79.754. 将二进制数变换成十六进制数:(1)101101B;(2)1101001011B;(3)1111111111111101B;(4)100000010101B;(5)1111111B;(6)10000000001B5. 将十六进制数变换成二进制数和十进制数:(1)FAH;(2)5BH;(3)78A1H;(4)FFFFH; (5) 34.2AH;(6)B8.93H6. 将下列十进制数转换成十六进制数:(1)39;(2)299.34375;(3)54.56257. 将下列二进制数转换成十进制数:(1)10110.101B;(2)10010010.001B;(3)11010.1101B8. 计算(按原进制运算):(1)10001101B+11010B;(2)10111B+11100101B;(3)1011110B-1110B;(4)124AH+78FH;(5)5673H+123H;(6)1000H-F5CH;9. 已知a=1011B,b=11001B,c=100110B, 按二进制完成下列运算,并用十进制运算检查计算结果:(1)a+b;(2)c-a-b;(3)a·b;(4)c/b10. 已知a=00111000B, b=11000111B, 计算下列逻辑运算:(1)a AND b;(2)a OR b;(3)a XOR b;(4)NOT a11. 设机器字长为8位,写出下列各数的原码和补码:(1)+1010101B;(2)-1010101B;(3)+1111111B;(4)-1111111B;(5)+1000000B;(6)-1000000B12. 写出下列十进制数的二进制补码表示(设机器字长为8位):(1)15;(2)-1;(3)117;(4)0;(4)-15;(5)127;(6)-128;(7)8013. 设机器字长为8位,先将下列各数表示成二进制补码,然后按补码进行运算,并用十进制数运算进行检验:(1)87-73;(2)87+(-73);(3)87-(-73);(4)(-87)+73;(5)(-87)-73;(6)(-87)-(-73);14. 已知a,b,c,d为二进制补码:a=00110010B, b=01001010B, c=11101001B, d=10111010B, 计算:(1)a+b;(2)a+c;(3)c+b;(4)c+d;(5)a-b;(6)c-a;(7)d-c;(8)a+d-c15. 设下列四组为8位二进制补码表示的十六进制数,计算a+b和a-b,并判断其结果是否溢出:(1)a=37H, b=57H; (2)a=0B7H, b=0D7H;(3)a=0F7H, b=0D7H; (4)a=37H, b=0C7H16. 求下列组合BCD数的二进制和十六进制表示形式:(1)3251(2)12907(3)ABCD(4)abcd17. 将下列算式中的十进制数表示成组合BCD码进行运算,并用加6/减6修正其结果:(1)38+42;(2)56+77;(3)99+88;(4)34+69;(5)38-42;(6)77-56;(7)15-76;(8)89-2318. 将下列字符串表示成相应的ASCII码(用十六进制数表示):(1)Example 1;(2)Jinan University;(3)-108.652;(4)How are you?;(5)Computer(6)Internet Web19. 将下列字符串表示成相应的ASCII码(用十六进制数表示):(1)Hello(2)123<CR>456;(注:<CR>表示回车)(3)ASCII;(4)The number is 2315[参考答案]3.解:(1)49=0011 0001B (2)73.8125=0100 1001.1101B(3)79.75=0100 1111.11B5. 解:(1)FAH=1111 1010B=250D (2)5BH=0101 1011B=91D(3)78A1H=0111 1000 1010 0001B=30881D(4)FFFFH=1111 1111 1111 1111B=65535D7. 解:(1)10110.101B=22.625 (2)10010010.001B=146.0625(3)11010.1101B=26.81259. 解:a=1011B=11, b=11001B=25, c=100110B=38(1)a+b=100100B=36 (2)c-a-b=10B=2(3)a·b=100010011B=275 (4)c/b=1……1101B(=13)11. 解:(1)+1010101B 原码01010101B 补码01010101B(2)-1010101B 原码11010101B 补码10101011B(3)+1111111B 原码01111111B 补码01111111B(4)-1111111B 原码11111111B 补码10000001B(5)+1000000B 原码 01000000B 补码01000000B(6)-1000000B 原码 11000000B 补码11000000B13. 解:按补码表示+87=0101 0111B;+73=0100 1001B;-87=1010 1001B;-73=1011 0111B(1)87-73=0101 0111B-0100 1001B=1110B=14(2)87+(-73)=0101 0111B+1011 0111B=[1]0000 1110B=14(舍去进位)(3)87-(-73)=0101 0111B-1011 0111B=[-1]1010 0000B=-96(溢出)(4)(-87)+73=1010 1001B+0100 1001B=1111 0010B=-14(5)(-87)-73=1010 1001B-0100 1001B=[-1]0110 0000B=96(溢出)(6)(-87)-(-73)=1010 1001B-1011 0111B=1111 0010B=-1415. 解:(1)a=37H, b=57H; a+b=8EH; a-b=[-1]E0H=-32(2)a=0B7H, b=0D7H; a+b=[1]8EH=-114; a-b=[-1]E0H=-32(3)a=0F7H, b=0D7H; a+b=[1]CEH=-50; a-b=20H=32(4)a=37H, b=0C7H; a+b=FEH=-2; a-b=[-1]70H=11217. 解:(1)将38、42表示成组合BCD码:38H、42H,然后按二进制进行运算,并根据运算过程中的AF,CF进行加6/减6修正。
微机原理及接口第九章作业答案
“微机系统原理与接口技术”第九章习题解答(部分)1. 什么是并行接口和串行接口?它们各有什么作用?答:并行接口是指接口与外设之间按字长传送数据的接口,即4位、8位或16位二进制位同时传送;而串行接口是指接口与外设之间依时间先后逐位传送数据的接口,即一个时刻只传送一个二进制位。
并行接口传送速度较快,但在远距离传送数据时成本高,损耗大,且平行数据线之间干扰大,所以并行接口一般适用于近距离的高速传送,而串行接口则适用于远距离传送。
2. 试画出8255A与8086CPU连接图,并说明8255A的A o、A i地址线与8086CPU的A i、A2地址线连接的原因。
答:8255A与8086CPU的连线图如下图所示:题9-2图8086系统有16根数据线,而8255只有8根数据线,为了软件读写方便,一般将8255 的8条数据线与8086的低8位数据线相连。
8086在进行数据传送时总是将总线低8位对应偶地址端口,因此8086CPU要求8255的4个端口地址必须为偶地址,即8086在寻址8255 时A0脚必须为低。
实际使用时,我们总是将8255的A0、A1脚分别接8086的A1、A2脚,而将8086的A0脚空出不接,并使8086访问8255时总是使用偶地址。
4. 简述8255A工作在方式1时,A组端口和B组端口工作在不同状态(输入或输出)时,C端口各位的作用。
注:带*的各中断允许信号由 C 口内部置位/复位操作设置,非引脚电平。
5. 用8255A控制12位A/D转换器,电路连接如下图所示。
设B 口工作于方式1输入,C 口上半部输入,A 口工作于方式0输入。
试编写8255A的初始化程序段和中断服务程序(注:CPU采用中断方式从8255A中读取转换后的数据)。
答:设8255的A、B、C及控制端口的地址分别为PORTA、POATB、PORTC和PCON,则一种可能的程序段实现如下:初始化8255AMOV AL,10011110B;设置8255A的工作方式控制字OUT PCON,ALMOV AL,00000101B;设置C 口置位復位控制字,使INTEA (PC2)为OUT PCON,AL;高电平,允许B 口中断MOV AL,00000010B;设置C 口置位/复位控制字,使PC1(IBF B)输出OUT PCON,AL;低电平,启动第一次A/D转换6. 用8255A作为CPU与打印机接口,8255的A 口工作于方式0,输出;C 口工作于方式0。
微机原理与接口技术中串口通信的特点
微机原理与接口技术中串口通信的特点
串口通信是一种通过串行接口进行数据传输的通信方式。
在微机原理与接口技术中,串口通信具有以下几个特点:
1. 低速传输:串口通信的传输速率相对较低,通常在几十到几百kbps之间。
与现代高速网络相比,串口通信的速度较慢。
这主要是因为串口通信使用的是串行传输方式,每次只能传输一个比特,而不像并行传输那样可以同时传输多个比特。
2. 长距离传输:串口通信可以实现较长距离的数据传输。
由于串口通信使用的是差分传输方式,信号幅度较大,因此能够在较长的距离上进行可靠的数据传输。
这使得串口通信在一些特殊环境下(如工业控制系统、远程监控等)得到广泛应用。
3. 硬件简单:串口通信的硬件结构相对简单,通常只需要一个串口芯片和几根信号线就可以实现。
这使得串口通信的成本较低,适用于一些对成本要求较高的应用场景。
4. 可靠性高:串口通信的差分传输方式可以有效地抑制干扰,提高通信的可靠性。
此外,串口通信还支持奇偶校验、停止位等机制,可以检测和纠正数据传输过程中的错误,进一步提高了通信的可靠性。
5. 支持点对点通信:串口通信是一种点对点的通信方式,即一对一的通信方式。
每个串口通信的设备都有一个唯一的地址,通信时只
需要指定目标设备的地址即可进行通信。
这种点对点的通信方式适用于一些需要直接与设备进行通信的应用场景。
总的来说,串口通信具有低速传输、长距离传输、硬件简单、可靠性高和支持点对点通信等特点。
在微机原理与接口技术中,学习串口通信的原理和接口技术,可以帮助我们理解和应用串口通信,实现与外部设备的数据交互。
微机技术作业_串并行通信和接口技术
5串并行通信和接口技术5.1接口部件为什么需要有寻址功能?设计一个用74LS138构成的译码电路,输入为A3、A4、A5、A8,输出8个信号以对8个接口部件进行选择。
想一想如果要进一步对接口中的寄存器进行寻址,应该怎样实现?5.2接口部件的输入/输出操作具体对应哪些功能,举例说明。
5.3 从广义上说接口部件有哪些功能?5.4 怎样进行奇/偶校验?如果用偶校验,现在所传输的数据中1的个数为奇数,那么,校验位应是多少?5.5什么叫覆盖错误?接口部件如果反映覆盖错误?5.6接口部件和总路线之间一般有哪些部件?它们分别完成什么功能?5.7为什么串行接口部件中的4个寄存器可以只用1位地址来进行区分?5.8在数据通信系统中,什么情况下可以采用全双工方式,什么情况下可用半双工方式?5.9什么叫同步通信方式?什么叫异步通信方式?它们各有什么优缺点?5.10什么叫波特率因子?什么叫波特率?设波特率因子为64,波特率为1200,那么时钟频率为多少?5.11标准波特率系列指什么?5.12设异步传输时,每个字符对应1个超始位、7个信息位、1个奇/偶校验位和1个停止位,如果波特率为9600,刚每秒能传输的最大字符数为多少个?5.13在RS-232-C标准中,信号电平与TTL电平不兼容,问RS-232-C标准的1和0分别对应什么电平?RS-232-C的电平和TTL电平之间通常用什么器件进行转换?5.14 从8251A的编程结构中,可以看到8251A有几个寄存器和外部电路有关?一共要几个端口地址?为什么5.15 8251A内部有哪些功能模块?其中读/写控制逻辑电路的主要功能是什么?5.16 什么叫异步工作方式?画出异步工作方式时8251A的TxD和RxD线上的数据格式。
5.17 什么叫同步工作方式?什么叫双同步字符方式?外同步和内同步有什么区别?画出双同步工作时8251A的TxD线和RxD线上的数据格式。
5.18 8251A和CPU之间有哪些连接信号?其中C/D和RD、WR如何结合起来完成对命令、数据的写入和状态、数据的读出?5.19 8086/8088系统中,8251A的C/D端应当和哪个信号相连,以便实现状态端口、数据端口、控制端口的读/写?5.20 8251A和外设之间有哪些连接信号?5.21为什么8251A要提供DTR,DSR,RTS,CTS四个信号作为和外设的联络信号?平常使用时是否可以只用其中两个或者全部不用?要特别注意什么?说明CTS端的连接方法。
微机与接口技术实验报告
微机与接口技术实验报告微机与接口技术实验报告引言微机与接口技术是计算机科学中的重要领域,它涉及到计算机与外部设备之间的通信和数据传输。
本实验报告旨在介绍微机与接口技术的基本概念、实验过程和结果,以及对实验结果的分析和讨论。
一、实验目的本实验旨在通过设计和实现一个简单的数据输入输出接口,加深对微机与接口技术的理解。
具体目标包括:1. 理解接口技术的基本原理和工作方式;2. 掌握接口电路的设计和实现方法;3. 学会使用编程语言控制接口电路进行数据输入输出。
二、实验原理1. 接口技术的基本原理接口技术是计算机与外部设备之间进行数据传输的关键。
通过接口电路,计算机可以与各种外部设备进行通信,实现数据的输入和输出。
接口电路通常由硬件和软件两部分组成,硬件部分负责物理连接和信号转换,而软件部分则负责控制和管理数据传输。
2. 接口电路的设计和实现接口电路的设计需要考虑多个因素,包括外部设备的接口标准、数据传输速率、数据格式等。
常用的接口标准包括串行接口(如RS-232)和并行接口(如Centronics接口)。
设计接口电路时,需要根据具体需求选择合适的接口标准,并合理设计电路结构和信号处理方式。
3. 编程语言控制接口电路为了实现数据的输入和输出,需要使用编程语言控制接口电路。
常用的编程语言包括C、C++和Python等。
通过编写相应的程序,可以控制接口电路进行数据传输,并实现与外部设备的交互。
三、实验过程1. 硬件设计与连接根据实验要求,设计并连接适当的硬件电路,包括接口芯片、电阻、电容等。
确保电路连接正确,且与计算机的接口兼容。
2. 软件编程使用C语言编写程序,实现对接口电路的控制。
程序应能够实现数据的输入和输出,并确保数据的正确传输和处理。
3. 实验操作根据实验要求,进行相应的实验操作。
包括数据输入和输出测试、数据传输速率测试、数据格式转换测试等。
记录实验过程中的数据和结果。
四、实验结果分析1. 数据输入输出测试通过实验操作,测试接口电路的数据输入和输出功能。
《微机接口与应用》作业及答案
《微机接口与应用(含汇编语言)》作业及答案一、单顶选择题1. 8086是( )A) 单片机 B) 单板机 C) 微处理器 D)微机系统2. 8086微处理器可寻址访问的最大I/O空间为( )A) 1K B) 64K C) 640K D) 1M3.集成度最高的存储线路是( )态线路。
A) 6管静态 B) 6管动态 C)4管动态 D)单管动态4.当8086/8088访问100H端口时,采用()寻址方式。
A) 直接 B) 立即 C) 寄存器间接 D) 相对5. 8086/8088的中断是向量中断,其中断服务程序的入口地址是由()提供。
A) 外设中断源 B) CPU的中断逻辑电路C) 以中断控制器读回中断类型号左移2位D) 由中断类型号指向的中断向量表中读出。
6.接口芯片是CPU与外设之间的界面,它与外设之间的联络信号是()。
A) RDY,STB B) RDY,INTC) STB,INT D) RDY,STB,INT7.对8253—5的定时与计数()。
A) 有两种不同的工作方式B) 定时只加时钟脉冲,不设计数值C) 实质相同 D) 从各自的控制端口设置8.单片机是( )A)微处理器 B)微型计算机 C) 微机系统 D)中央处理器9. 8086最小工作方式和最大工作方式的主要差别是()A)内存容量不同 B)I/O端口数不同C)数据总线位数不同 D)单处理器和多处理器的不同10. 8253—5某计数器的最大计数初值是()。
A) 65536 B) FF00H C) 0000H D) FFFFH11. 8253—5某计数器工作在方式1时,在计数中途OUTi为()A) 由低变高 B) 由高变低 C) 高电平 D) 低电平12.由8088微处理器组成的PC机的数据线是( )A)8条单向线 B)16条单向线C)8条双向线 D)16条双向线13.要组成64KB的8086系统程序存储空间,选用EPROM的最佳方案是( )芯片。
微机原理和接口技术(第三版)课本习题答案解析
第二章 8086 体系结构与80x86CPU1.8086CPU 由哪两部份构成?它们的主要功能是什么?答:8086CPU 由两部份组成:指令执行部件<EU,Execution Unit>和总线接口部件<BIU,Bus Interface Unit>。
指令执行部件〔EU 主要由算术逻辑运算单元<ALU>、标志寄存器F R、通用寄存器组和E U 控制器等4个部件组成,其主要功能是执行指令。
总线接口部件<BIU>主要由地址加法器、专用寄存器组、指令队列和总线控制电路等4个部件组成,其主要功能是形成访问存储器的物理地址、访问存储器并取指令暂存到指令队列中等待执行,访问存储器或者I/O 端口读取操作数参加E U 运算或者存放运算结果等。
2.8086CPU 预取指令队列有什么好处? 8086CPU 内部的并行操作体现在哪里?答: 8086CPU 的预取指令队列由6个字节组成,按照8086CPU 的设计要求, 指令执行部件〔EU 在执行指令时,不是直接通过访问存储器取指令,而是从指令队列中取得指令代码,并分析执行它。
从速度上看,该指令队列是在C PU 内部,EU 从指令队列中获得指令的速度会远远超过直接从内存中读取指令。
8086CPU 内部的并行操作体现在指令执行的同时,待执行的指令也同时从内存中读取,并送到指令队列。
5.简述8086 系统中物理地址的形成过程。
8086 系统中的物理地址最多有多少个?逻辑地址呢?答: 8086 系统中的物理地址是由20 根地址总线形成的。
8086 系统采用分段并附以地址偏移量办法形成20 位的物理地址。
采用分段结构的存储器中,任何一个逻辑地址都由段基址和偏移地址两部份构成,都是16 位二进制数。
通过一个20 位的地址加法器将这两个地址相加形成物理地址。
具体做法是16 位的段基址左移4位<相当于在段基址最低位后添4个"0">,然后与偏移地址相加获得物理地址。
《微机原理与接口技术》参考答案完整版
《微机原理与接口技术》习题参考答案习题21.为何说8086CPU是16位CPU?答:16位指的是8086CPU的字长,而字长一般来说和运算器、寄存器、总线宽度一致。
因为8086CPU的内部寄存器、内部运算部件以及内部操作都是按16位设计的,这决定了它的字长为16位。
2.8086CPU由哪两个单元组成?其中,指令队列在哪个单元中,有何作用?答:总线接口单元(Bus Interface Unit,BIU)和执行单元(Execution Unit,EU)。
指令队列在BIU中。
它的作用是当EU在执行指令时,空闲的BIU可以从内存读取后续指令到指令队列,这样就可以将取指令工作和执行指令工作重叠进行,从而提高CPU的工作效率,加快指令的执行速度。
3.8086CPU中8位寄存器和16位寄存器是什么关系?答:8086的通用寄存器包括数据寄存器、指针寄存器和变址寄存器。
其中数据寄存器包含AX、BX、CX、DX四个16位寄存器,但他们每个都可以分开作为两个单独的8位寄存器使用。
8086的指针寄存器和变址寄存器不可分割为8位寄存器。
4.8086CPU中的IP寄存器有何用途?答:IP寄存器是指令指针寄存器,用来存放下一条要执行的指令在代码段中的偏移地址。
在程序运行过程中,IP寄存器始终指向下一条指令的首地址,与CS寄存器联合确定下一条指令的物理地址。
8086就是通过IP寄存器来控制指令序列的执行流程。
5.在标志寄存器中,用于反映运算结果属性的标志位有哪些?它们每一位所表示的含义是什么?答:有CF、PF、AF、ZF、SF、OF。
它们的含义如下:CF:进位标志。
它记录运算时从最高有效位产生的进位值或结果值。
最高有效位有进位或有借位时CF=1,否则CF=0。
PF:奇偶标志。
它记录运算结果的奇偶检验条件。
当结果操作数中“1”的个数为偶数时PF=1,否则PF=0。
AF:辅助进位标志。
在字节运算时,由低半字节(字节的低4位)向高半字节有进位或借位时,AF=1,否则AF=0。
微机接口作业及答案
《微型计算机原理与接口技术》部分作业及补充题参考答案第7章存储器系统P2176.某SRAM存储芯片,其字位结构为512K×8bit,试问其地址、数据引脚各是多少个?答:∵219=512K,所以地址引脚需19根;数据引脚需8根(8bit)。
8.现有1024×1bit的存储芯片,若用它组成容量为16K×8bit的存储器。
试求:(1)实现该存储器所需的芯片数量答:(16K×8bit)/(1K×1bit)=128片(2)该存储器所需地址的地址码总位数是多少?其中几位选片?几位用作片内地址?答:∵214 =16K,所以地址码总位数为14位。
而1024×1bit存储芯片需要地址10位,因此选片地址为4位,片内地址为10位。
第8章输入/输出系统P2442.接口电路的作用是什么?I/O接口应具备哪些功能?参见教材P2193.什么是端口?端口有几类?参见教材P220 8.1.2 输入输出端口4.I/O端口有哪两种编址方式?PC系列机采用哪种编址方式?答:I/O端口和存储单元统一编址及I/O端口独立编址两种。
PC机采用I/O端口独立编址。
7. 定时/计数器的3个通道在PC系列机中是如何应用的?答:0#计数器用于系统时钟中断;1#计数器用于动态存储器刷新定时;2#计数器用于发声系统音调控制。
10.系统机定时/计数器的通道0定时周期最长是多少?要实现长时间定时,应采取什么措施?如果采用外扩8254定时/计数器实现长时间定时,应采取哪些措施?答:系统机定时/计数器通道0定时周期最长是55ms。
要实现长时间定时,只能使用 INT 1CH 中断的方法,通过对预先设定的中断次数进行计数,达到n倍55ms的定时目的。
采用外扩8254,可以使用三个通道硬件级联的方法实现长时间定时。
补充题:设PC 系统机外扩了一片8254 及相应的实验电路。
(1) 根据由门电路构成的译码电路,分析出该片8254 的四个端口地址。
#微型计算机原理与接口技术答案
P237 2.答:掩膜型ROM中信息是厂家根据用户给定的程序或数
据,对芯片图形掩膜进行两次光刻而写入的,用户对这类芯片 无法进行任何修改。
PROM出厂时,里面没有信息,用户采用一些设备可以将 内容写入PROM,一旦写入,就不能再改变了,即只允许编程 一次。
EPROM可编程固化程序,且在程序固化后可通过紫外光 照擦除,以便重新固化新数据。
2019年5月18日星期六
微机原理与接口技术
第七章作业习题课
杭州电子科技大学自动化学院
2019年5月18日星期六
P302 1. 【答】:当CPU正常运行程序时,由于微处理器内部事件或外设请求,
引起CPU中断正在运行的程序,转去执行请求中断的外设(或内部事件)的中断 服务子程序,中断服务程序执行完毕,再返回被中止的程序,这一过程称为中 断。
2019年5月18日星期六
3.答: CPU与外设通信时,传送的信息主要包括数据信息、 状态信息和控制信息。在接口电路中,这些信息分别进入不同 的寄存器,通常将这些寄存器和它们的控制逻辑统称为I/O端口, CPU可对端口中的信息直接进行读写。在一般的接口电路中都 要设置以下几种端口:
⑴数据端口:用来存放外设送往CPU的数据以及CPU要输 出到外设去的数据。数据端口主要起数据缓冲的作用。
DMA方式:也要利用系统的数据总线、地址总线和控制总 线来传送数据。原先,这些总线是由CPU管理的,但当外设需 要利用DMA方式进行数据传送时,接口电路可以向CPU提出请 求,要求CPU让出对总线的控制权,用DMA控制器来取代CPU, 临时接管总线,控制外设和存储器之间直接进行高速的数据传 送。这种控制器能给出访问内存所需要的地址信息,并能自动 修改地址指针,也能设定和修改传送的字节数,还能向存储器 和外设发出相应的读/写控制信号。在DMA传送结束后,它能释 放总线,把对总线的控制权又交还给CPU。
微机原理与接口技术中串口通信的特点
微机原理与接口技术中串口通信的特点串口通信是一种用于在计算机及其外设之间传输数据的通信方式。
在微机原理与接口技术中,串口通信具有以下特点。
1. 简单可靠:串口通信使用的是简单的硬件接口和通信协议,不需要复杂的电路和软件支持,因此具有较高的可靠性。
此外,串口通信还具有较低的成本,适用于各种规模的系统。
2. 适用性强:串口通信可以连接各种类型的设备,包括打印机、调制解调器、传感器等。
并且,串口通信可以通过串口转换器与其他类型的接口进行兼容,例如USB、以太网等。
3. 独立性强:串口通信不依赖于计算机的操作系统或应用程序,因此可以在不同的系统平台上进行通信。
这使得串口通信具有较好的兼容性和灵活性。
4. 传输速度较慢:串口通信的传输速度相对较慢,一般在几千到几十万位/秒之间。
这是由于串口通信使用的是串行传输方式,每次只能传输一个位,而不是同时传输多个位。
因此,对于需要高速传输的应用,串口通信可能不太适合。
5. 数据传输可靠:串口通信使用的是异步传输方式,数据传输时会包含校验位,可以检测和纠正传输中的错误。
这使得串口通信具有较高的数据传输可靠性,适用于对数据准确性要求较高的应用场景。
6. 通信距离较短:串口通信的通信距离一般较短,一般在几米到几十米之间。
这是由于串口通信使用的是电压信号传输,信号的衰减和干扰会随着距离的增加而增加,从而影响通信质量。
7. 配置灵活:串口通信可以通过设置波特率、数据位数、校验位、停止位等参数进行配置,以适应不同的通信需求。
这使得串口通信具有较好的灵活性和可扩展性。
8. 数据格式简单:串口通信使用的数据格式相对简单,一般是以字节为单位进行传输。
这使得数据的解析和处理相对容易,适用于各种类型的数据传输。
总的来说,串口通信是一种简单可靠、适用性强、独立性强、传输速度较慢、数据传输可靠、通信距离较短、配置灵活、数据格式简单的通信方式。
在微机原理与接口技术中,了解串口通信的特点和应用场景对于设计和实现各种接口和设备之间的通信非常重要。
微机原理与接口技术课后习题有答案
第一章解:五代,详细见书解:微型计算机:以大规模、超大规模集成电路为主要部件,以集成了计算机主要部件——控制器和运算器的微处理器为核心,所构造出的计算机系统 ;PC机:PCPersonal Computer机就是面向个人单独使用的一类微机 ;单片机:用于控制的微处理器芯片,内部除CPU外还集成了计算机的其他一些主要部件,如:ROM、RAM、定时器、并行接口、串行接口,有的芯片还集成了A/D、D/A转换电路等;数字信号处理器DSP:主要面向大流量数字信号的实时处理,在宿主系统中充当数据处理中心,在网络通信、多媒体应用等领域正得到越来越多的应用解:微机主要有存储器、I/O设备和I/O接口、CPU、系统总线、操作系统和应用软件组成,各部分功能如下:CPU:统一协调和控制系统中的各个部件系统总线:传送信息存储器:存放程序和数据I/O设备:实现微机的输入输出功能I/O接口:I/O设备与CPU的桥梁操作系统:管理系统所有的软硬件资源解:系统总线:传递信息的一组公用导线,CPU通过它们与存储器和I/O设备进行信息交换 ;好处:组态灵活、扩展方便三组信号线:数据总线、地址总线和控制总线 ;其使用特点是:在某一时刻,只能由一个总线主控设备来控制系统总线,只能有一个发送者向总线发送信号;但可以有多个设备从总线上同时获得信号;解:1用于数值计算、数据处理及信息管理方向;采用通用微机,要求有较快的工作速度、较高的运算精度、较大的内存容量和较完备的输入输出设备,为用户提供方便友好的操作界面和简便快捷的维护、扩充手段;2用于过程控制及嵌人应用方向;采用控制类微机,要求能抵抗各种干扰、适应现场的恶劣环境、确保长时间稳定地工作,要求其实时性要好、强调其体积要小、便携式应用强调其省电;解:解:I/O通道:位于CPU和设备控制器之间,其目的是承担一些原来由CPU处理的I/O任务,从而把CPU 从繁杂的I/O任务中解脱出来;由10根信号线组成A9-A0;解:BIOS:基本输入输出系统;主要功能:用来驱动和管理诸如键盘、显示器、打印机、磁盘、时钟、串行通信接口等基本的输入输出设备解:基本RAM区:640KB保留RAM区:128KB扩展ROM区:128KB基本ROM区:128KB解:1、数—用来直接表征量的大小,包括:定点数、浮点数;2、码—用来指代某个事物或事物的某种状态属性,包括:二进制、八进制、十进制、十六进制;区别:使用场合不同,详见P16.解:123解:原码反码补码+37 00100101/25H 00100101/25H 00100101/25H解:解:无符号数:70D补码有符号数:70DBCD码:46DASCII:F解:1、相加后若出现和大于9,则将和减去10后再向高位进12、若出现组间进位,则将低位加6解:详见课本16页;解:C3 40 20 00D:44Hd:64HCR:0DHLF:0AH0:30HSP:20HNUL:00H解:国标码:36 50H机内码:B6 B0H第3章解:1完整的汇编语言源程序由段组成2一个汇编语言源程序可以包含若干个代码段、数据段、附加段或堆栈段,段与段之间的顺序可随意排列3需独立运行的程序必须包含一个代码段,并指示程序执行的起始点,一个程序只有一个起始点4所有的可执行性语句必须位于某一个代码段内,说明性语句可根据需要位于任一段内5通常,程序还需要一个堆栈段开始位置:用标号指明返回DOS:利用DOS功能调用的4CH子功能来实现汇编停止:执行到一条END伪指令时,停止汇编解:段定位、段组合和段类型;解:stack segment stackdb 10240stack endsdata segmentstring db 'Hello,Assembly',0dH,0aH,‘$’data endscode segment 'code'assume cs:code,ds:data,ss:stackstart: mov dx,offset stringmov ah,9int 21hcode endsend start解:1. EXE程序程序可以有多个代码段和多个数据段,程序长度可以超过64KB通常生成EXE结构的可执行程序2. COM程序只有一个逻辑段,程序长度不超过64KB需要满足一定条件才能生成COM结构的可执行程序MASM 需要采用TINY模式解:符号定义伪指令有“等价EQU”和“等号=”:符号名 EQU 数值表达式符号名 EQU <字符串>符号名=数值表达式EQU用于数值等价时不能重复定义符号名,但“=”允许有重复赋值;例如:X= 7 ;等效于:X equ 7X= X+5 ;“X EQU X+5”是错误的解:1 al=67h2 ax=133h,dx=4h3 ax=0230h4 al=41h4 ax=7654h解:my1b db 'Personal Computer'my2b db 20my3b db 14hmy4b db 00010100bmy5w dw 20 dupmy6c = 100my7c = <'Personal Computer'>解:利用定位伪指令控制,如org,even,align解:包括逻辑地址和类型两种属性;解:;数据段org 100hvarw dw 1234h , 5678hvarb db 3 , 4buff dd 10 dupmess db 'Hello';代码段mov ax , offset varb + offset messmov ax , type buff + type mess + type vard mov ax , sizeof varw+ sizeof buff+ sizeof messmov ax , lengthof varw+ lengthof vard解:1 1000超过一个字节所能表达的最大整数2SI应为偶数3两个内存单元不能直接运算4应改为al+15条件转移指令后面应接标号,而不是变量解:mov ah,1 ;只允许输入小写字母int 21hsub al,20h ;转换为大写字母mov dl,almov ah,2int 21h ;显示解:mov bx,offset LEDtablemov al,lednumxlat解:mov ax, bufXcmp ax, bufYjae donemov ax, bufYdone: mov bufZ, ax解:.model small.stack.databufX dw -7signX db.code.startupcmp bufX,0 ;test bufX,80hjl next ;jnz nextmov signX,0jmp donenext: mov signX,-1done: .exit 0end解:mov dl,’2’mov ax,bufXcmp ax,bufYje next1dec dlnext1: cmp ax,bufZje next2dec dlnext2: mov ah,2int 21h解:;代码段mov al,numbermov bx,0 ;BX←记录为1的位数restart: cmp al,0 ;AL=0结束jz doneagain: shr al,1 ;最低位右移进入CFjc next ;为1,转移inc bx ;不为1,继续jmp againnext: push axpush bxshl bx,1 ;位数乘以2偏移地址要用2个字节单元jmp addrsbx ;间接转移:IP←table+BX;以下是各个处理程序段fun0: mov dl,'0'jmp dispfun1: mov dl,'1'jmp dispfun2: mov dl,'2'jmp dispfun3: mov dl,'3'jmp dispfun4: mov dl,'4'jmp dispfun5: mov dl,'5'jmp dispfun6: mov dl,'6'jmp dispfun7: mov dl,'7'jmp disp;disp: mov ah,2 ;显示一个字符int 21hpop bxpop axjmp restartdone: …编制程序完成12H、45H、0F3H、6AH、20H、0FEH、90H、0C8H、57H和34H等10个字节数据之和,并将结果存入字节变量SUM中不考虑溢出和进位;;.model small.stack.datab_data db 12h,45h,0f3h,6ah,20h,0feh,90h,0c8h,57h,34h ;原始数据num equ 10 ;数据个数sum db ;预留结果单元.code.startupxor si, si ;位移量清零xor al, al ;取第一个数mov cx, num ;累加次数again: add al, b_datasi ;累加inc si ;指向下一个数loop again ;如未完,继续累加mov sum, al ;完了,存结果.exit 0end求主存0040h:0开始的一个64KB物理段中共有多少个空格;.model small.codestart: mov ax,0040h ;送段地址mov ds, axmov si, 0 ;偏移地址mov cx, si ;计数循环次数xor ax, ax ;空格计数器清零again: cmp byte ptr si, 20h ;与空格的ASCII码比较jne next ;不是空格,转inc ax ;是空格,空格数加1next: inc si ;修改地址指针loop again ;cx=cx-1,如cx=0 退出循环.exit 0end start编写计算100个16位正整数之和的程序;如果和不超过16位字的范围65535,则保存其和到wordsum,如超过则显示‘overflow’;答:;数据段count equ 100parray dw count dup ;假设有100个数据wordsum dw 0msg db ‘overflow’,’$’;代码段mov cx,countmov ax,0mov bx,offset parrayagain: add ax,bxjnc nextmov dx,offset msgmov ah,9int 21h ;显示溢出信息jmp done ;然后,跳出循环体next: add bx,2loop againmov wordsum,axdone: …编程把—个16位无符号二进制数转换成为用8421BCD码表示的5位十进制数;转换算法可以是:用二进制数除以10000,商为“万位”,再用余数除以1000,得到“千位”;依次用余数除以l00、10和l,得到“百位”、“十位”和“个位”; ;.model small.stack 256.dataarray dw ;源字数据dbcd db 5 dup ;五位bcd结果,高对高低对低.code.startupmov dx, array ;取源数据余数mov bx, 10000 ;除数mov cx, 10 ;除数系数mov si, 4 ;目的数据高位位移量again: mov ax, dx ;中存放被除数mov dx, 0div bx ;除于bx,商ax,余数dxmov dbcdsi, al ;商<10,存结果push dx ;暂存余数mov ax, bx ;除数除于10mov dx,0div cx ;除于cx,商ax、余数0存在dxmov bx, ax ;bx是除数pop dxdec si ;目的数据位移量减1jnz againmov dbcd, dl ;存个位数 < 10.exit 0end解:1汇编语言中,子程序要用一对过程伪指令PROC和ENDP声明,格式如下:过程名PROC NEAR|FAR……;过程体过程名ENDP2保护用到的寄存器内容,以便子程序返回时进行相应的恢复;3改错:crazy procpish bxpush cxxor ax,axxor dx,dxagain:add a,bxadc dx,0inc bxinc bxloop againpop cxpop bx解不需调用HTOASC子程序:again: mov ah,1int 21hcmp al,1bh ;ESC的ASCII码是1bhje donemov dl,almov ah,2int 21h ;是大写字母则转换为小写字母jmp againdone: …解答:asctob procpush cxand dh,0fh ;先转换十位数shl dh,1 ;十位数乘以10采用移位指令mov ch,dhshl dh,1shl dh,1add dh,chand dl,0fh ;转换个位数add dh,dl ;十位数加个位数mov al,dh ;设置出口参数pop cxretasctob endp解:DIPASC proc ;入口参数:AL=要显示的一个16进制数push cxpush dxpush axmov cl,4 ;转换高位shr al,clcall HTOASCmov dl,al ;显示mov ah,2int 21hpop ax ;转换低位call HTOASCmov dl,al ;显示mov ah,2int 21hmov dl,’H’;显示一个字母“H”mov ah,2int 21hpop dxpop cxretDIPASC endpHTOASC proc ;将AL低4位表达的一位16进制数转换为ASCII码and al,0fhcmp al,9jbe htoasc1add al,37h ;是0AH~0FH,加37H转换为ASCII码ret ;子程序返回htoasc1: add al,30h ;是0~9,加30H转换为ASCII码ret ;子程序返回HTOASC endp解:lucase procpush bxmov bx,offset stringcmp al,0je case0cmp al,1jz case1cmp al,2jz case2jmp donecase0: cmp byte ptr bx,0je donecmp byte ptr bx,’A’jb next0cmp byte ptr bx,’Z’ja next0add byte ptr bx,20hnext0: inc bxjmp case0case1: cmp byte ptr bx,0je donecmp byte ptr bx,’a’jb next1cmp byte ptr bx,’z’ja next1sub byte ptr bx,20hnext1: inc bxjmp case1case2: cmp byte ptr bx,0je donecmp byte ptr bx,’A’jb next2cmp byte ptr bx,’Z’ja next20add byte ptr bx,20hjmp next2next20: cmp byte ptr bx,’a’jb next2cmp byte ptr bx,’z’ja next2sub byte ptr bx,20hnext2: inc bxjmp case2done: pop bxretlucase endp解:1用寄存器传递参数:最简单和常用的参数传递方法是通过寄存器,只要把参数存于约定的寄存器中就可以了由于通用寄存器个数有限,这种方法对少量数据可以直接传递数值,而对大量数据只能传递地址采用寄存器传递参数,注意带有出口参数的寄存器不能保护和恢复,带有入口参数的寄存器可以保护、也可以不保护,但最好能够保持一致2用共享变量传递参数子程序和主程序使用同一个变量名存取数据就是利用共享变量全局变量进行参数传递如果变量定义和使用不在同一个源程序中,需要利用PUBLIC、EXTREN声明如果主程序还要利用原来的变量值,则需要保护和恢复利用共享变量传递参数,子程序的通用性较差,但特别适合在多个程序段间、尤其在不同的程序模块间传递数据3用堆栈传递参数参数传递还可以通过堆栈这个临时存储区;主程序将入口参数压入堆栈,子程序从堆栈中取出参数;子程序将出口参数压入堆栈,主程序弹出堆栈取得它们采用堆栈传递参数是程式化的,它是编译程序处理参数传递、以及汇编语言与高级语言混合编程时的常规方法解:方法:主程序将入口参数压入堆栈,子程序从堆栈中取出参数;子程序将出口参数压入堆栈,主程序弹出堆栈取得它们注意:压栈与弹栈必须要一一对应;解:方法1:neg32 proc ;入口参数:=32位有符号数neg ax ;实现0-功能neg dxsbb dx,0 ;这条指令也可以用dec dx代替retneg32 endp ;出口参数:=32位有符号数的补码方法2:neg32 proc ;入口参数:=32位有符号数not ax ;实现求反加1not dxadd ax,1adc dx,0retneg32 endp ;出口参数:=32位有符号数的补码解:;数据段array db 12h,25h,0f0h,0a3h,3,68h,71h,0cah,0ffh,90h ;数组count equ $-array ;数组元素个数result db ;校验和;代码段mov bx,offset array ;BX←数组的偏移地址mov cx,count ;CX←数组的元素个数call checksum ;调用求和过程mov result,al ;处理出口参数mov ax,4c00hint 21h;计算字节校验和的通用过程;入口参数:DS:BX=数组的段地址:偏移地址,CX=元素个数;出口参数:AL=校验和;说明:除AX/BX/CX外,不影响其他寄存器checksum procxor al,al ;累加器清0sum: add al,bx ;求和inc bx ;指向下一个字节loop sumretchecksum endpend解:⑴.model small.stack.datawdata dw 34abh.code.startupmov ax,wdatacall dispa.exit 0;dispa procpush cxpush dxmov cl,4mov dl,ahshr dl,clcall dldispmov dl,ahand dl,0fhcall dldispmov dl,alshr dl,clcall dldispmov dl,aland dl,0fhcall dldisppop dxpop cxretdispa endp;dldisp procpush axor dl,30hcmp dl,39hjbe dldisp1add dl,7dldisp1: mov ah,2int 21hpop axretdldisp endpend⑵.model small.stack.datawdata dw 34abhwordtemp dw.code.startupmov ax,wdatamov wordtemp,axcall dispa.exit 0;dispa procpush cxpush dxmov cl,4mov dl,byte ptr wordtemp+1shr dl,clcall dldispmov dl,byte ptr wordtemp+1and dl,0fhcall dldispmov dl,byte ptr wordtempshr dl,clcall dldispmov dl,byte ptr wordtempand dl,0fhcall dldisppop dxpop cxretdispa endp;dldisp procpush axor dl,30hcmp dl,39hjbe dldisp1add dl,7dldisp1: mov ah,2int 21hpop axretdldisp endpend⑶.model small.stack.datawdata dw 34abh.code.startuppush wdatacall dispapop ax ;add sp,2.exit 0;dispa procpush bpmov bp,sppush axpush cxpush dxmov ax,bp+4mov cl,4mov dl,ahshr dl,clcall dldispmov dl,ahand dl,0fhcall dldispmov dl,alshr dl,clcall dldispmov dl,aland dl,0fhcall dldisppop dxpop cxpop axpop bpretdispa endp;dldisp procpush axor dl,30hcmp dl,39hjbe dldisp1add dl,7dldisp1: mov ah,2int 21hpop axretdldisp endpend解:如果利用共享变量传递函数,且变量定义和使用不在同一个源程序中,需要利用PUBLIC、EXTERN 声明;解:1宏定义由一对宏汇编伪指令MACRO和ENDM来完成,格式如下:宏名MACRO 形参表……;宏定义体ENDM宏定义之后就可以使用它,即宏调用:宏名实参表2宏调用的格式同一般指令一样:在使用宏指令的位置写下宏名,后跟实体参数;如果有多个参数,应按形参顺序填入实参,也用逗号分隔3宏展开:在汇编时,宏指令被汇编程序用对应的代码序列替代,这就是宏展开宏展开的具体过程是:当汇编程序扫描源程序遇到已有定义的宏调用时,即用相应的宏定义体完全替代源程序的宏指令,同时用位置匹配的实参对形参进行取代解:宏调用的参数通过形参、实参结合实现传递,简捷直观、灵活多变;宏汇编的一大特色是它的参数;宏定义时既可以无参数,也可以有一个或多个参数;宏调用时实参的形式也非常灵活,可以是常数、变量、存储单元、指令操作码或它们的一部分,也可以是表达式;只要宏展开后符合汇编语言的语法规则即可;解:宏:仅是源程序级的简化:宏调用在汇编时进行程序语句的展开,不需要返回;不减小目标程序,执行速度没有改变通过形参、实参结合实现参数传递,简捷直观、灵活多变子程序:还是目标程序级的简化:子程序调用在执行时由CALL指令转向、RET指令返回;形成的目标代码较短,执行速度减慢需要利用寄存器、存储单元或堆栈等传递参数选择:宏与子程序具有各自的特点,程序员应该根据具体问题选择使用那种方法;通常,当程序段较短或要求较快执行时,应选用宏;当程序段较长或为减小目标代码时,要选用子程序编写一个宏指令move doprnd,soprnd,它实现任意寻址方式的字量源操作数soprnd送到目的操作数doprnd,包括存储单元到存储单元的传送功能;答:move macro doprnd,soprndmov ax,soprndmov doprnd,axendm定义一个宏logical,用它代表4条逻辑运算指令:and/or/xor/test;注意需要利用3个形式参数,并给出一个宏调用以及对应宏展开的例子;答:logical macro lcode,dopd,sopdlcode dopd,sopdendm例如,如果使用“and ax,bx”指令,可以利用该宏定义,写出宏指令如下:logical and,ax,bx解:utol macrolocal nextcmp al,’A’;小于“A”不转换jb nextcmp al,’Z’;大于“A”不转换ja nextadd al,20h ;是大写字母则转换为小写字母next:endm定义一个宏movestr strn,dstr,sstr,它将strn个字符从一个字符区sstr传送到另一个字符区dstr解:假设它们都在数据段movestr macro strn,dstr,sstrmov cx,dsmov es,cxmov cx,strnmov di,offset dstrmov si,offset sstrcldrep movsb ;;重复传送ES:DI←DS:SIendm第五章解:主存的作用:保存正在使用的、处于活动状态的程序和数据;辅存的作用:长期保存程序文件和数据文件,在需要时将这些文件调入RAM内存并激活使用;cache的作用:提高对存储器的访问速度;虚拟存储:由容量较小的主存和容量较大的辅存构成,其目标是扩大程序员眼中的主存容量;区别:通过存储器访问指令用户可对主存进行随机访问;用户利用操作系统提供的用户命令和功能调用对辅存进行访问;在半导体存储器中,RAM指的是随机存取存储器 ,他可读可写,但断电后信息一般会丢失;而ROM指的是只读存储器 ,正常工作时只能从中读取信息,但断电后信息不会丢失 ;以EPROM芯片2764为例,其存储容量为8K×8位,共有 8 条数据线和 13 条地址线;用它组成64KB的ROM存储区共需 8 片2764芯片; 解:双译码方式使得地址译码器的输出线的数目大为减少,使得芯片设计得时候复杂度就低了;地址线A9~A4根数据线I/O4~I/O1片选CS读写WE解:假想的RAM有12根地址线、4根数据线片选端CS或CE:有效时,可以对该芯片进行读写操作,通过对系统高位地址线的译码来选中各个存储芯片输出OE:控制读操作;有效时,芯片内数据输出,该控制端对应系统的读控制线MEMRMRDC写WE:控制写操作;有效时,数据进入芯片中,该控制端对应系统的写控制线MEMWMWTC解:位片结构:每个存储单元具有一个唯一的地址,可存储1位;4116字片结构:每个存储单元具有一个唯一的地址,可存储多位;2114解:组成单元速度集成度应用SRAM 触发器快低小容量系统DRAM 极间电容慢高大容量系统NVRAM 带微型电池慢低小容量非易失掩膜ROM:信息制作在芯片中,不可更改PROM:允许一次编程,此后不可更改EPROM:用紫外光擦除,擦除后可编程;并允许用户多次擦除和编程EEPROME2PROM:采用加电方法在线进行擦除和编程,也可多次擦写Flash Memory闪存:能够快速擦写的EEPROM,但只能按块Block擦除解:位扩充——存储器芯片数据位数小于主机数据线数时,利用多个存储器芯片在数据“位”方向的扩充;地址扩充字扩充——当一个存储器芯片不能满足系统存储容量时,利用多个存储器芯片在“地址”方向的扩充组成32KB存储空间,用SRAM 21141K×4需要64个芯片;组成32KB存储空间,用DRAM 411616K×1需要16个芯片;它们都需要进行位扩充和地址扩充解:片选信号说明该存储器芯片是否被选中正常工作,设置它可以比较方便地实现多个存储器芯片组成大容量的存储空间存储器片选信号通常与CPU地址总线的高位地址线相关联,可以采用“全译码”、“部分译码”、“线选译码”方式采用全译码方式可以避免地址重复采用部分或线选译码可以节省译码硬件解:24=16解:解:解:解:解:动态随机存取存储器 DRAM 的存储单元电路动态存储单元是由 MOS 管的栅极电容 C 和门控管组成的;数据以电荷的形式存储在栅极电容上,电容上的电压高表示存储数据 1 ;电容没有储存电荷,电压为 0 ,表明存储数据 0 ;因存在漏电,使电容存储的信息不能长久保持,为防止信息丢失,就必须定时地给电容补充电荷,这种操作称为“ 刷新” 由于要不断地刷新,所以称为动态存储;方法:采用“仅行地址有效”方法刷新;刷新周期:15μs刷新次数:128解:4 256KB A19-A16 4解:访问的局部性原理:在一个较短的时间间隔内,由程序产生的地址往往集中在存储器逻辑地址空间的很小范围内;指令地址的分布本来就是连续的,再加上循环程序段和子程序段要重复执行多次;因此,对这些地址的访问就自然地具有时间上集中分布的倾向;数据分布的这种集中倾向不如指令明显,但对数组的存储和访问以及工作单元的选择都可以使存储器地址相对集中;这种对局部范围的存储器地址频繁访问,而对此范围以外的地址则访问甚少的现象,就称为程序访问的局部性;cache的作用:提高对存储器的访问速度;虚拟存储:其目标是扩大程序员眼中的主存容量;第七章解:总线:指可以由多个信息处理单元所共享的信息通道;使用特点:⑴在某一时刻,只能由一个主设备控制总线,其他主设备此时可作为从设备出现⑵在某一时刻,只能有一个设备向总线上发送数据,但可以有多个设备从总线上接收数据在各种微机总线中,根据总线连接对象的不同可将它们分为以下几类,它们是:片内总线、芯片总线、板级总线、设备总线和互连总线_;例如,ISA总线属于板级总线,USB总线属于设备总线,I2C总线属于芯片总线;总线中除电源和地线外的信号线,也可按传输信息的不同分为以下3类,即:数据总线、地址总线、控制总线 ;解:分时复用就是一个引脚在不同的时刻具有两个甚至多个作用总线复用的目的是为了减少对外引脚个数在访问存储器或外设的总线操作周期中,这些引脚在第一个时钟周期输出存储器或I/O端口的低8位地址A7 ~ A0,其他时间用于传送8位数据D7 ~ D0 解:并行总线:多维数据通过多根信号线同时进行传递;并行同步传输、并行异步传输见P174;解:见P174.解:总线的性能指标包括:总线宽度、标准传输、时钟同步/异步、总线复用、信号线数、总线控制方式总线宽度:它是指数据总线的根数, 用bit位表示,如8位、16位、32位、64位;解:D0~D7:8位双向数据总线A0~A19:20位输出地址总线ALE:地址锁存允许,每个CPU 总线周期有效IOR:I/O读,输出IOW:I/O写,输出IO CH RDY:I/O通道准备好,输入第九章解:软件延时、不可编程的硬件定时、可编程的硬件定时解:CLK时钟输入信号——在计数过程中,此引脚上每输入一个时钟信号下降沿,计数器的计数值减1GATE门控输入信号——控制计数器工作,可分成电平控制和上升沿控制两种类型OUT计数器输出信号——当一次计数过程结束计数值减为0,OUT引脚上将产生一个输出信号解:8253每个通道有 6 种工作方式可供选择;若设定某通道为方式0后,其输出引脚为低电平;当写入计数初值并进入减1计数器后通道开始计数, CLK 信号端每来一个脉冲减1计数器就减1;当计数器减为0 ,则输出引脚输出高电平,表示计数结束;8253的CLK0接的时钟,欲使OUT0产生频率为300KHz的方波信号,则8253的计数值应为 5=÷300KHz ,应选用的工作方式是 3解:1 mov al,50hmov dx,207hout dx,almov al,128 ;80hmov dx,205hout dx,al2 mov al,33hmov dx,207hout dx,almov ax,3000h ;不是3000mov dx,204hout dx,almov al,ahout dx,al3 mov al,0b4hmov dx,207hout dx,almov al,02f0hmov dx,206hout dx,almov al,ahout dx,al解:mov al,33hout 0fbh,al ;写入计数器0地址:0fbhmov al,80h ;out 0f8h,al ;写入低字节计数初值mov al,50hout 0f8h,al ;写入高字节计数初值作用:计数器0的计数初值为5080h解计数器0——每隔55ms产生一个IRQ0中断请求计数器1——每隔15μs产生一个DRAM刷新请求计数器2——控制扬声器音调解101个下降沿,还可以采用方式4GATE0接外部启动计数器的控制信号,可以选用方式1或方式5 mov dx,203hmov al,12h ;方式5为1ahout dx,almov dx,200hmov al,64hout dx,al解:计数器0的计数值:5M/1K=5000=1388H方式控制字:00100101=25H、2DH、35H、3DH十进制计数00100100=24H、2CH、34H、3CH二进制计数计数器1的计数值:1000方式控制字:01101001=69H、79H十进制计数 01101000=68H、78H二进制计数MOV DX,0FFF3HMOV AL,25H ;通道0,只写高字节,方式2,十进制OUT DX,ALMOV DX, 0FFF0HMOV AL,50H ;计数初值5000OUT DX,ALMOV DX,0FFF3HMOV AL,69H ;通道1,方式4OUT DX,ALMOV DX, 0FFF1HMOV AL,10H ;计数初值1000OUT DX,AL解:stack segment stackdw 1024 dupstack endsdata segmentfreq dw 8,,,,,,,,data endscode segment 'code'assume cs:code, ds:data,ss:stack start: mov ax,datamov ds,axagain:mov ah,01hin 21hcmp al,1BHjz nextcmp al,31Hjb next1cmp al,38Hja next1and al,0fhmov ah,00hmov si,axmov bx,offset freqmov ax,BX+SIcall speakercall speakonjmp againnext1: call speakoffjmp againnext: mov ax,4c00hint 21hspeaker procpush axmov al,0b6hout 43h,alpop axout 42h,almov al,ahout 42h,alretspeaker endp speakon procpush axin al,61hor al,03hout 61h,alpop axretspeakon endp speakoff procpush axin al,61hand al,0fchout 61h,alpop axretspeakoff endpcode endsend starts 解:1 f 1162f。
微机原理与接口技术习题解答
微机原理与接口技术习题第二章1.简答:(1)8086的时钟周期、总线周期、指令周期(2)8086的基本总线周期及T1、T2、T3、T4四个时钟周期的主要工作(3)在最小系统方式,8086的地址/数据复用线信号如何分离?(4)80386的三种工作方式(5)保护方式下,逻辑地址到物理地址的转换原理2、填空(1)引脚信号和操作的关系操作 WR# RD# M/IO# DT/R# DEN#BHE# 指令举例I/O读 1 0 0 00 1 0 1 1 OUT 30H,AL存储器读(字) 1 0 1 0 0存储器写(字) 0 1 1 MOV [2000H],AX1 1 0 1 MOV AL,[2000H]存储器写(字节) 0 1 1 1 0(2) 8086可以处理()个中断,中断向量表在()存储空间范围,25H号中断的中断向量放在()单元。
(3)两个有符号数运算:70ADH+80ADH,结果是______,对8086标志位的影响:SF=______、CF=______ 、ZF=______ 。
(4)已知12H号中断处理程序放在存储器从3344:5678H开始的地方,则从内存______H开始的连续四个单元中存放着中断向量,依次为______、______、______和______。
(5)8086工作在最小模式下,以下引脚的作用是:ALE______ ;/RD_______ ;/INTR______; /BHE_______ ;RESET______ 。
(6)一个容量为1MB的16位CPU,它的地址线有_____________ 条,数据线有___________条,CPU可寻址的范围是_______________。
(7)设8086的主频为4MHz,则执行一个基本的总线周期要___________ns,基本的总线周期有几个时钟周期__________,当CPU的引脚_________为低时会自动插入Tw周期。
微机接口与通信作业 - 副本
《微机接口与通讯》平时作业1.从微型计算机的结构分析微处理器与存储器及I/O的关系,并说明总线结构的优点。
答:Pentium:采用了许多过去在大型机中才采用的技术,迎合了高性能微型机系统需要,其主要体现在超标量流水线设计、双高速缓存、分支预测、改善浮点运算等方面。
2.从计算机应用角度分析不同结构、规模、表现形式的微型计算机的应用目标以及性能指标。
答:8位机在80年代初期和中期使用。
字符、数字信息适合于一般的数据处理。
16位机可进行大量的数据处理的多任务控制。
32位机除用于过程控制、事务处理、科学计算等领域、多媒体处理以及计算机辅助设计、计算机辅助制造等。
单片机体积小、功耗低主要应用于智能仪器仪表以及其它控制领域。
个人计算机适用于家用、商用、教育等各种应用领域。
工程工作站是一种微型化的功能强大的计算机有速度快、内存大等特点又有小巧灵活、轻便价廉等优点。
3.阐述并比较8086、80286、80386、80486、PentiumCPU的内容结构。
答:80286四个独立的处理部件即执行部件EU、总线部件BU、指令部件IU和地址部件AU。
采用流水线作业方式使各部件能同时并行地工作。
80386由六部分组成即总线接口部件、指令译码部件、执行部件、分段部件和分页部件。
80486基本沿用80386的体系结构由8个基本部件组成总线接口部件、指令预取部件、指令译码部件、执行部件、控制部件、存储管理部件、高速缓存部件和高性能浮点处理部件。
Pentium采用了许多过去在大型机中才采用的技术迎合了高性能微型机系统需要其主要体现在超标量流水线设计、双高速缓存、分支预测、改善浮点运算等方面。
4.阐述指令周期、总线周期、时钟周期的相互关系,并举若干条8086CPU机器指令的执行过程来说明上述三种周期。
答:时钟周期是微处理器动作处理的最小时间单位一个总线周期由若干个时钟周期所组成。
一个指令周期通常由若个总线周期所组成对于读取指令代码就是一个存储器读总线周期。
微机原理与接口技术习题答案
第3章8086/8088指令系统与寻址方式习题3.3 8086系统中,设DS=1000H,ES=2000H,SS=1200H,BX=0300H,SI=0200H,BP=0100H,VAR的偏移量为0600H,请指出下列指令的目标操作数的寻址方式,若目标操作数为存储器操作数,计算它们的物理地址。
(1)MOV BX,12 ;目标操作数为寄存器寻址(2)MOV [BX],12 ;目标操作数为寄存器间址PA=10300H(3)MOV ES:[SI],AX ;目标操作数为寄存器间址PA=20200H(4)MOV VAR,8 ;目标操作数为存储器直接寻址PA=10600H(5)MOV [BX][SI],AX ;目标操作数为基址加变址寻址PA=10500H(6)MOV 6[BP][SI],AL ;目标操作数为相对的基址加变址寻址PA=12306H (7)MOV [1000H],DX ;目标操作数为存储器直接寻址PA=11000H(8)MOV 6[BX],CX ;目标操作数为寄存器相对寻址PA=10306H(9)MOV VAR+5,AX ;目标操作数为存储器直接寻址PA=10605H3.4 下面这些指令中哪些是正确的那些是错误的如果是错误的,请说明原因。
(1)XCHG CS,AX ;错,CS不能参与交换(2)MOV [BX],[1000] ;错,存储器之不能交换(3)XCHG BX,IP ;错,IP不能参与交换(4)PUSH CS(5)POP CS ;错,不能将数据弹到CS中(6)IN BX,DX ;输入/输出只能通过AL/AX(7)MOV BYTE[BX],1000 ;1000大于255,不能装入字节单元(8)MOV CS,[1000] ;CS不能作为目标寄存器(9)MOV BX,OFFSET VAR[SI] ;OFFSET只能取变量的偏移地址(10)MOV AX,[SI][DI] ;SI、DI不能成为基址加变址(11)MOV COUNT[BX][SI],ES:AX ;AX是寄存器,不能加段前缀3.7 设当前SS=2010H,SP=FE00H,BX=3457H,计算当前栈顶的地址为多少当执行PUSH BX 指令后,栈顶地址和栈顶2个字节的内容分别是什么当前栈顶的地址=2FF00H当执行PUSH BX 指令后,栈顶地址=2FEFEH(2FEFEH)=57H(2FEFFH)=34H3.8 设DX=78C5H,CL=5,CF=1,确定下列各条指令执行后,DX和CF中的值。
《微机原理与接口技术》作业(修订)
*教材:中国科大《微型计算机原理与接口技术》第5版*思考题:不用写在作业本,不用上交作业;*书面题:z写在作业本上,周一上课前上交作业;z作业本必须有封面,写清课程名、班级、学号、姓名;z作业题标清题号,抄写题目;z答题留有间隙或空行。
CH1思考题:1-5、10、11、13【1.1】将下列二进制数转换成10进制数。
(1)11001010B (2)00111101B (3)01001101B (4)10100100B 【1.2】将下列16进制数转换成10进制数。
(1)12CH (2)0FFH (3)3A8DH (4)5BEH 【1.3】将下列10进制数分别转换成二进制数和16进制数。
(1)25 (2)76 (3)128 (4)134【1.4】求出下列10进制数的BCD码(压缩的BCD码和非压缩的BCD码)。
(1)327 (2)1256【1.5】将英文单词About和数字95转换成ASCII码字符串。
【1.6】求出下列10进制数的原码、反码和补码【1.7】冯•诺依曼结构的计算机由哪几部分组成?大致是如何工作的?【1.8】计算机的硬件和软件分别指什么?【1.9】什么是机器语言、汇编语言和高级语言?【1.10】画出微型计算机的基本结构框图,说明各部分的主要功能是什么。
【1.11】微型计算机系统由哪些部分组成?【1.12】说明下列名称的英文全称和中文含义。
(1)ALU (2)CPU (3)PC (4)DOS 【1.13】 8086和80386各有多少根地址总线?可直接寻址的内存空间各是多少?它们的数据总线各有多少根?CH2思考题:2-4、6、10、13-14、17-18书面题:1、5、7-9、11-12【2.1】 8086/8088CPU可直接寻址多少个内存(字节)单元?多少I/O端口?它们的外部数据总线各有多少根?【2.2】 8086CPU内部由哪两部分组成?它们大致是如何工作的?【2.3】 CPU、EU、BIU的英文全称和中文含义各是什么?【2.4】 8086CPU内部有哪些寄存器?各有什么用途?【2.5】两个带符号数1011 0100B和1100 0111B相加,运算后各标志位的值等于多少?哪些标志位是有意义的?如果把这两个数当成无符号数,相加后哪些标志位是有意义的?(参考例2.2)【2.6】说明8086引脚信号的功能:AD15~AD0、A19/S6~A16/S3、’RD、’WR、M/’IO、CLK、RESET、INTR、NMI、ALE、DT/’R、’DEN。
微型计算机接口技术及应用习题及答案
1.1、接口技术在微机应用中起什么作用?答:在微机系统中,微处理器的强大功能必须通过外部设备才能实现,而外设与微处理器之间的信息交换和通信又是靠接口来实现的,所以,接口处于微机总线与设备之间,进行CPU与设备之间的信息交换。
1.2、微机接口技术的基本任务是什么?答:通过接口实现设备与总线的连接;连接起来以后,CPU通过接口对设备进行访问,即操作或控制设备。
1.5、什么是I/O设备接口?答:设备接口是指I/O设备与本地总线(如ISA总线)之间的连接电路并进行信息(包括数据、地址及状态)交换的中转站。
1.6、I/O设备接口一般应具备哪些功能?答:微机的接口一般有如下的几个功能:(1)执行CPU命令的功能:CPU将对外设的控制命令发到接口电路中的命令寄存器(命令口)中,在经分析去控制外设;(2)返回外设状态的功能:通过状态寄存器(状态口)完成,包括正常工作状态和故障状态;(3)数据缓冲的功能:接口电路中的数据寄存器(数据口)对CPU 于外设间传送的数据进行中转;(4)设备寻址的功能:CPU某个时刻只能和一台外设交换数据,CPU发出的地址信号经过接口电路中的地址译码电路来选中I/O设备;(5)信号转换的功能:当CPU与外设的信号功能定义、逻辑关系、电平高低及工作时序不兼容时接口电路要完成信号的转换功能;(6)数据宽度与数据格式转换的功能:由于CPU处理的数据都是并行的,当外设采用串行传送方式时,接口电路就要完成串、并之间的转换,并进行数据格式的转换。
1.8、I/O设备接口与CPU之间交换数据有哪几种方式?答:1.查询方式;2.中断方式;3.直接存储器存取(DMA)方式。
2.1、什么是总线?总线在微机系统中起什么作用?答:总线是计算机各种功能部件之间传送信息的公共通信干线,它是由导线组成的传输线束。
总线作用:连接微处理器、存储器、外部设备构成微机系统,从而形成一个有机的整体来运行程序。
它的基本任务是微处理器对外连接和传输数据。
(完整版)微机原理与接口技术作业(含答案)
(完整版)微机原理与接⼝技术作业(含答案)o d 浙江⼤学远程教育学院《微机原理与接⼝技术》课程作业姓名:学号:年级:学习中⼼:第2章 P522.80C51单⽚机引脚有哪些第⼆功能?第⼀功能第⼆功能P0.0~P0.7 地址总线Ao ~A7/数据总线D0~D7 P2.0~P2.7 地址总线A8~A15 P3.0 RXD(串⾏输⼊⼝) P3.1 TXD(串⾏输出⼝) P3.2 INT0外部中断0) P3.3 IINT1(外部中断1)P3.4 TO(定时器/计数器0的外部输⼊) P3.5 T1(定时器/计数器0的外部输出) P3.6 WR(外部数据存储器或I /O 的写选通)P3.7 RD 外部数据存储器或I /O 的读选通)4.80C51单⽚机的存储器在结构上有何特点?在物理上和逻辑上各有哪⼏种地址空间?访问⽚内RAM 和⽚外RAM 的指令格式有何区别?1、80C5l 单⽚机采⽤哈佛结构,即将程序存储器和数据存储器截然分开,分别进⾏寻址。
不仅在⽚内驻留⼀定容量的程序存储器和数据存储器及众多的特殊功能寄存器,⽽且还具有较强的外部存储器扩展能⼒,扩展的程序存储器和数据存储器寻址范围都可达64 KB 。
2、在物理上设有4个存储器空间·⽚内程序存储器; ·⽚外程序存储器;·⽚内数据存储器;. ·⽚外数据存储器。
在逻辑上设有3个存储器地址空间●⽚内、⽚外统⼀的64 KB 程序存储器地址空间。
●⽚内256字节(80C52为384字节)数据存储器地址空间。
⽚内数据存储器空间在物理上⼜包含两部分:●对于80C51型单⽚机,0~127字节为⽚内数据存储器空间;128~255字节为特殊功能寄存器(SFR)空间(实际仅占⽤了20多个字节)。
●对于80C52型单⽚机,O ~127字节为⽚内数据存储器空间;128~255字节共128个字节是数据存储器和特殊功能寄存器地址重叠空间。
⽚外64 KB 的数据存储器地址空间。
兰州大学 接口和通讯技术练习题带答案 全
接口与通讯技术课程作业_A历次成绩完成时间查看详情1.88.02015-03-14 23:35:39接口与通讯技术课程作业_A接口与通讯技术课程作业_A用户名:jinxiao5856最终成绩:88.0仅显示答错的题一单选题1. 8253/8254无论工作在哪种方式在初始化编程时写入控制字后输出端OUT便()。
A. 变为高电平B. 变为低电平C.变为相应的高电平或低电平D.保持原状态不变直至计数结束本题分值: 4.0用户得分: 4.0用户解答: C.变为相应的高电平或低电平标准答案: C.变为相应的高电平或低电平2. 8251芯片是一种___。
A.并行接口芯片B.串行接口芯片C.DMACD.中断控制芯片本题分值: 4.0用户得分: 4.0用户解答: A.并行接口芯片标准答案: A.并行接口芯片3. 在CPU与外设进行数据交换时,模拟量属于()数据信息状态信息运算信息CPU指令代码本题分值: 4.0用户得分: 4.0用户解答:数据信息标准答案:数据信息4. 异步串行通信中一个字符信息位的格式按先后次序是()。
起始位、数据位、校验位、停止位起始位、校验位、数据位、停止位起始位、数据位、停止位、校验位校验位、起始位、数据位、停止位本题分值: 4.0用户得分: 4.0用户解答:起始位、数据位、校验位、停止位标准答案:起始位、数据位、校验位、停止位5. 以下不属于人机接口的是( )。
键盘显示器打印机MODEM本题分值: 4.0用户得分: 4.0用户解答: MODEM标准答案: MODEM6. 总线的宽度用()总线的条数表示。
地址数据控制以上所有本题分值: 4.0用户得分: 4.0用户解答:数据标准答案:数据7. PC机中采用的异步通信接口芯片是___。
A.8255B.8251C.8250D.8279本题分值: 4.0用户得分: 4.0用户解答: B.8251标准答案: B.82518. 按键的抖动是由()造成的。
接口与通信习题参考答案
习题一1.什么是接口?接口就是微处理器CPU与外部世界的连接部件,是CPU与外界进行信息交换的中转站。
2.为什么要在CPU与外设之间设置接口?在CPU与外设之间设置接口主要有4个原因:(1)CPU与外设二者的信号不兼容,包括信号线的功能定义、逻辑定义和时序关系(2)CPU与外设的速度不匹配,CPU的速度快,外设的速度慢(3)若不通过接口,而由CPU直接对外设的操作实施控制,会使CPU处于穷于应付与外设打交道之中,大大降低CPU的效率(4)若外设直接由CPU控制,会使外设的硬件结构依赖于CPU,对外设本身的发展不利。
3.接口技术在微机应用中起的作用?随着计算机技术的高速发展,计算机的应用越来越广泛。
然而,在微机系统中,微处理器的强大功能必须通过外部设备才能实现,而外设与微处理器之间的信息交换和通信又是靠接口来实现的,所以,接口技术成为了一门关键技术,它直接影响微机系统的功能和微机的推广应用。
4.接口电路的硬件一般由哪几部分组成?接口电路的硬件一般由以下几部分组成:(1)基本逻辑电路:包括命令寄存器、状态寄存器和数据缓冲寄存器,是接口电路中的核心(2)端口地址译码电路:实现设备的选择功能(3)供选电路:根据不同任务和功能要求而添加的功能模块电路。
5.接口电路的软件控制程序一般包括哪几部分?接口电路的软件控制程序一般包括以下的程序段,各部分程序是相互渗透、融为一体的:(1)初始化程序段:对可编程接口芯片进行初始化编程(2)传送方式处理程序段:不同的传送方式(查询、中断、DMA方式)程序段不同(3)主控程序段:完成接口任务的程序段(4)程序终止与退出程序段:程序退出前对接口电路中硬件进行保护的程序段(5)辅助程序段:人-机对话、菜单等6.接口电路的结构有哪几种形式?接口电路的结构主要有四种:(1)固定式结构:不可编程的接口电路,结构简单、功能单一、固定(2)半固定式结构:由PAL或GAL器件构成的接口电路,功能和工作方式可以通过改写内部的逻辑表达式来改变,但逻辑表达式一旦烧入芯片,其功能和工作方式就固定下来了(3)可编程结构:其功能和工作方式可由编程指定,使用灵活、适应面广,且种类繁多(4)智能型结构:芯片本身就是一个微处理器,外设的全部管理都由智能接口完成,如I/O处理器I0809或通用单片机7.CPU与接口之间有哪几种传送数据的方式?它们各应用在什么场合?CPU与接口之间的数据传送方式主要有查询方式、中断方式和DMA方式:(1)查询方式:主要用于CPU不太忙且传送速度不高的情况下。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《微机接口与通讯》平时作业1.从微型计算机的结构分析微处理器与存储器及I/O 的关系,并说明总线结构的优点。
答:微型计算机是以微处理器即CPU 为核心,系统总线连接内存储器和I/O 接口电路而构成的。
微型计算机采用了总线结构,这种结构可以使得系统内部各部件之间的相互关系变为各部件之间面向总线的单一关系。
2.从计算机应用角度分析不同结构、规模、表现形式的微型计算机的应用目标以及性能指标。
答:8 位机,在80年代初期和中期使用。
字符、数字信息,适合于一般的数据处理。
16 位机,可进行大量的数据处理的多任务控制。
32 位机,除用于过程控制、事务处理、科学计算等领域、多媒体处理以及计算机辅助设计、计算机辅助制造等。
单片机,体积小、功耗低,主要应用于智能仪器仪表以及其它控制领域。
个人计算机,适用于家用、商用、教育等各种应用领域。
工程工作站是一种微型化的功能强大的计算机,有速度快、内存大等特点,又有小巧灵活、轻便价廉等优点。
3. 阐述并比较8086、80286、80386、80486、Pentium CPU 的内容结构。
答:80286:四个独立的处理部件,即执行部件EU、总线部件BU、指令部件IU和地址部件AU 。
采用流水线作业方式,使各部件能同时并行地工作。
80386:由六部分组成,即总线接口部件、指令译码部件、执行部件、分段部件和分页部件。
80486:基本沿用80386 的体系结构,由8 个基本部件组成:总线接口部件、指令预取部件、指令译码部件、执行部件、控制部件、存储管理部件、高速缓存部件和高性能浮点处理部件。
Pentium:采用了许多过去在大型机中才采用的技术,迎合了高性能微型机系统需要,其主要体现在超标量流水线设计、双高速缓存、分支预测、改善浮点运算等方面。
4.阐述指令周期、总线周期、时钟周期的相互关系,并举若干条8086CPU 机器指令的执行过程来说明上述三种周期。
答:时钟周期是微处理器动作处理的最小时间单位,一个总线周期由若干个时钟周期所组成。
一个指令周期通常由若个总线周期所组成,对于读取指令代码,就是一个存储器读总线周期。
将微处理器内部累加器中的值写入指定存储器单元中,执行这条指令可能就需要二个总线周期:读总线周期和写总线周期。
读总线周期:写总线周期:T1 :提供地址T1 :提供地址T2 :读信号有效T2 :写信号有效T3 :数据有效T3 :数据有效T4 :读操作结束T4 :写操作结束5.给出8086CPU 处于最小模式时的CPU 子系统结构图,并说明组成CPU 子系统的各芯片的功能。
答:结构图如下8084:用于产生系统时钟信号;地址锁存器:用于暂存地址值;数据缓冲器,用于驱动数据。
6.说明一般微处理器的内部组成与外部主要引脚的功能,并说明执行加法指令过程中指令代码和加工的数据在CPU内部各部件流动和外部引脚的信号变化情况。
答:组成微处理器的最基本的部件是运算部件、控制部件、寄存器组和内部数据总线。
外部主要引脚功能:地址线:输出,用于提供存储器或I/O接口的地址。
地址线的位数决定了微处理器的寻址范围。
数据线:双向,用于提供微处理器与外部交换数据的通道。
从累加器存入锁存器的数据和暂存器中的数据通过ALU运算,结果通过内部数据总线存回累加器,输出CPU外部到存存储器或I/O。
运算结果将影响标志寄存器和十进制调整电路,并对下一次运算产生作用。
7.相对实模式,说明保持模式的特点。
答:保持模式的特点:(1)地址由段描述表按“段地址”查到相应描述符,得到的真实地址+偏移(2)32位地址线,拥有4GB的寻址(3)实现虚拟存储和代码保护保持模式比实模式多了以下:(1)寄存器GDR,LDR,IDR,TR,CR3。
(2)数据段,描述符表(GDT,LDT),任务数据段(TS),页表。
(3)机制,权限检测(利用选择子/描述符/页表项的属性位),线性地址到物理地址的映射。
8.阐述计算机三级存储体系中Cache、主存、辅存的特点与作用,并说明目前三类存储器由哪些类型的存储器承担,其存储器特性有什么特征。
答:Cache:组成:高速SRAM ;特点:快速的存取性能,用于存放CPU访问频度最高的数据。
主存:组成:DRAM ;特点:速度和容量介于Cache和辅存,用于存放CPU当前执行的程序和所需要的数据。
辅存:组成:磁盘、磁带、光盘等;特点:存储容量大,用于后备的程序和数据。
三级存储体系的目标:存储体系的速度入接近Cache,存储体系的成本接近于辅存。
9.说明半导体存储器的内部结构,并比较静态RAM和动态RAM在存储原理、外部特性、性能指标等方面的异同。
答:半导体存储器芯片的内部结构基本相同,都是由存储体和外围电路二部分组成。
存储体是由一系列按行/列排列的基本存储单元所组成。
外围电路由地址译码器、I/O电路、10.以静态RAM作为内存储器,比较并联组合和串联组合,说明地址线、数据线、控制线的连接要点。
答:并联组合:8片芯片为1组,一旦选中,则同时工作,或者输入,或者输出。
数据线:每片存储器芯片数据线连至CPU不同位的数据线。
地址线:每片地址线的连接都相同,与CPU的地址线相连接。
控制线:每片的控制线连接都是相同。
读写控制线连CPU的读写控制线。
串联组合:CPU用高位地址选择存储器芯片,用低位地址选择赶集器芯片中的存储单元。
同一时刻,CPU访问一个存储器芯片中的一个存储单元。
数据线:存储器芯片的数据线与CPU的数据线直接相连。
地址线:存储器芯片的地址线与CPU低位地址线直接相连,用于选择芯片内的存储单元。
控制线:存储器的读写控制线与CPU的读写控制线直接相连,存储器的片选信号线由高位地址线经译码产生。
11.一般CPU地址总线可寻址的范围比系统实际使用的内存容量要大。
试举一地址译码电路为例,说明地址译码器的片选端和译码输入端应连接CPU的什么信号线,并分析该译码电路的各译码输出端所对应的存储器地址范围。
答:用8K衣8的存储器芯片组成的16KB RAM电路,低位地址线A12 —A0直接连至每一片的6264芯片的地址输入端,高位地址线经译码以后产生片选信号,分别连接到2 片6264的片选输入端。
地址译码器74LS138是一个常用的3 —8译码器,当地址A19 —A16 = 1110时,该译码器选中,也就是说,该译码器Y7 —Y0输出的地址范围为EOOOOH—EFFFFH。
其中:当A15 —A13 = 000时,Y0 输出有效,其地址范围为E0000H —E仆FFH ;当A15 —A13 = 001时,Y1输出有效,其地址范围为E2000H —E3FFFH。
12.针对动态RAM的地址线分行列输入以及刷新行地址的输入,与静态RAM的接口电路相比较,说明其存储器接口电路有什么特点。
答:(1)同静态RAM , CPU输出的地址总线高位部分用于进行地址译码产生片选信号,地址总线的低位部分用于选择存储器内部的存储单元。
但是,由于动态RAM的地址输入是分行、列进行的,因此不能直接将CPU的低位地址线直接连至存储器的地址线输入,而是需要将这部分地址一分为二,按行、列分时输入存储器。
(2)由于动态RAM有刷新要求,既需要刷新控制信号,也需要为动态RAM提供刷新地址,因此,作为动态RAM的连接,还需要有一个产生刷新地址的电路,并通过选择电路,能在需要刷新时候将刷新地址送入动态RAM13.通过通常I/O接口电路的结构,阐述I/O接口电路的功能。
答:I/O接口是为了协调CPU与各种外设间的矛盾(不匹配)而设臵的介于CPU和外设之间的控制逻辑电路。
因此,接口电路要面对CPU和外设两个方面,I/O接口有以下功能:(1)数据缓冲和锁存功能(2)接收和执行CPU命令的功能(3)信号电平转换功能(4)数据格式变换功能(5)中断管理功能(6)可编程功能对一个具体的接口电路来说,不一定都要求具备上述功能,不同的外设,不同的用途,其接口功能和内部结构是不同的。
14.与存储器映象寻址方式相比较,说明独立I/O 寻址方式的特点。
答:( 1)存储器映象寻址方式的编址方式是把系统中的每一个I/0 端口都看作一个存储单元,并与存储单元一样统一编址。
而I/O 单独编址方式对系统中的输入输出端口地址单独编址,构成一个I/O 空间;(2)存储器映象寻址方式把I/O 地址映射到存储空间,作为整个存储空间的一小部分,而I/O单独编址方式不占用存储空间,而是用专门的IN 指令和OUT 指令来访问这种具有独立地址空间的端口;15.比较无条件传送方式、程序查询方式、中断方式以及DMA 方式这四种数据传送方式,在硬件电路、CPU 作用、应用范围等方面阐述其特征。
答:无条件传送方式主要应用于己知或固定不变的低速I/O 接口设备或无须等待时间的I/O 设备。
若是输入设备则直接使用三态缓冲器和数据总路线相连,CPU 在执行输入指令时,外设的数据是准备好的。
若是输出设备,要求接口具有锁存功能,以使CPU 送出的数据在接口电路的输出端保持一些时间。
程序查询方式的接口电路除了有传送数据的端口以外,还要有传送状态的端口。
对于输入过程来说,当外设将数据准备好时,则使接口的状态端口中的“准备好”标志位臵成有效,表示当前输出数据端口己经处于“空闲”状态,可以接收下一个数据。
DMA 方式数据传送不需要CPU 介入,由DMA 控制器直接控制数据完成存储器和I/O 之间的传送,采用DMA 控制器的硬件代替了原来的软件来控制数据的传送,且不需进行保护现场和恢复现场之类的额外操作,因此数据传送速度快、I/O 响应时间短、CPU 额外开销小,但增加了系统硬件的复杂性和提高了系统的成本。
16.以8086CPU 为例,说明中断响应和中断返回的过程。
在说明此过程中,如何保证优先权最高的中断申请源能得到CPU 的中断服务。
答:CPU响应中断: (1 )关闭中断(为禁止CPU响应其它中断申请);(2)保护断点现场信息(通常将断点和标志寄存器内容入栈) ; ( 3)获得中断服务入口地址,转中断服务程序。
一旦CPU响应中断,就可转入中断服务程序中:(1 )保护现场;(2)开中断;(3)中断服务; (4)关中断;(5)恢复现场; (6)开中断返回。
17.叙述Intel 8259 中断控制器的功能以及编程方法。
答:(1) 单片8259A 可以连接8个中断源,多片8259A 连接后,可以控制多达64个中断源;(2)可以设臵中断源的中断类型号;在CPU应答后,能自动地向CPU发送中断类型号;(3)能管理中断源的优先级,并有固定优先级(自动嵌套方式)和循环优先级(相等优先级)两种管理方式;(4)可以设臵中断请求的方式(电平方式和脉冲方式) 。
8259A必须先进行初始化编程,后进行工作编程。
初始化命令共预臵4个命令字ICW1〜ICW4。