微机复习要点.docx
《微机复习要点.docx》由会员分享,可在线阅读,更多相关《微机复习要点.docx(28页珍藏版)》请在冰豆网上搜索。
![微机复习要点.docx](https://file1.bdocx.com/fileroot1/2023-4/28/78262fed-b4d7-487e-b043-17f7b21d2aec/78262fed-b4d7-487e-b043-17f7b21d2aec1.gif)
微机复习要点
第二章处理器
一、8086
1.内部结构及各部件的功能。
两个部件=BIU+EU。
BIU:
负责内外信息交换。
还负责物理地址合成。
取指令。
传送数据。
形成物理地。
EU:
执行全部指令。
指令译码。
执行指令向BIU传送偏移地址信息。
管理通用寄存器和标志寄存器
只有BX、BP、SI、DI可用于寄存器间接寻址,所有32位通用寄存器均可用于间接寻址。
CF:
进位标志循环指令也使CF=1
SF:
符号标志SF的值就是有符号数的最高位(符号位)ZF:
全零标志OF:
溢出标志
PF:
奇偶标志运算结果若低8位所含1的个数为偶数则PF=1,否则PF=0
AD7-AD0A19/S6、A18/S5、A17/S4、A16/S3、A15-A8、AD7-AD0
(2)控制总线:
8086共16条控制线,其中8条共用的控制线
(3)其他信号线:
Vcc:
电源+,+5V;GND(地):
电源地;CLK:
时钟输
5总线周期:
完成一次总线操作(存储器或I/O访问)所需的读/写机器周期。
8086/8088一个基本总线周期包括四个时钟周期的时间,习惯上称为4个状态。
T1状态:
输出地址信息并锁存。
T2状态:
撤销地址,为传送数据做准备。
T3状态:
如果外部准备好,则数据稳定在总线上。
T4状态:
读写总线上的数据,总线周期结束。
Tw:
等待周期,T3与T4之间
6.物理地址求法:
段地址*16+偏移地址
二、80286总线部件BU:
负责内外信息交换。
锁存和驱动地址总线。
预取指令。
控制各外部总线。
收发数据。
执行部件EU:
执行全部指令。
执行指令;进行算术和逻辑运算。
向AU提供逻辑地址;管理通用寄存器;地址部件AU:
计算物理地址;指令部件IU:
指令译码;从预取队列中取源代码并译码,然后放入3条指令的指令队列中
标志位:
比8086增加2个标志位
NT:
嵌套标志NT=1有任务嵌套;NT=0无任务嵌套
IOPL:
I/O特权标志0层(00):
最高层操作系统的核心程序使用
1.工作模式(实地址方式+保护地址方式)引脚信号(最小模式和公共模式下的引脚。
68个引脚。
数据线与地址线分开
与8086不同的引脚有:
COD/INTA#:
代码/中断响应信号,存储器操作时:
高为取指令,低为传送数据;I/O操作时,高为I/O数据传送,低为中断响应。
PEREQ:
协处理器请求,高为协处理器请求。
PEACK#:
协处理器请求应答,低有效。
ERROR#:
协处理器出错,低有效。
80386
1.内部结构及各部件的功能
六个部件=SU(分段)+PU(分页)+BU(总线)+IPU(指令预取)+IDU(指令译码)+EU(执行)CR0:
机器控制寄存器PE:
保护方式允许PE=1启动系统后进入保护方式
PG:
分页允许标志PG=1启动片内分页部件工作VM:
虚拟方式位在保护方式下,VM=1使80386工作在虚拟8086方式。
VM位只能在保护方式下由IRET指令(当前特权等级为0)或在任何特权级下由任务切换设置使VM=1,从而进入虚拟8086方式
RF:
恢复标志调试失败后,RF=1,强迫程序恢复执行,当程序执行时,RF=0
段描述符:
描述数据段、堆栈段及代码段在存储器中的起始位置、段的限界值和访问权限
描述符表寄存器:
存放相应描述附表地址信息的寄存器。
GDTR:
全局描述符表寄存器LDTR:
局部描述符表寄存器LDTR:
中断描述符表寄存器
2.工作模式(实地址方式+保护地址方式+虚拟86方式)
3.不同模式物理地址求法
段选择子(索引+TI+RPL)、段描述符、访问权字节(P+DPL+S+A)、
4.32位处理器段描述符结构及其应用。
外部数据线与地址线条数及其与物理地址空间关系。
32条地址线,32位数据总线。
物理地址空间为4GB。
物理地址范围为0-FFFFFFFFH
386以后32位处理器复位后EIP=0000FFFFH第一条指令的存放地址:
段基地址+偏移地址=FFFF0000H+FFF0H=FFFFFFF0H,第一条地址处于ROM区,在该处存放一条无条件转移指令,将程序指向系统初始化程序的入口
5.物理地址空间及虚拟地址空间
物理地址空间=2地址线条数,如386:
232=4G
虚拟地址空间=2索引位数*描述符表个数*段大小或=214*2地址线条数
处理器
存储空间
8086/8088
80286
80386
80486
Pentium
地址线条数
20
24
32
段大小
64KB
64KB
4GB
物理地址空间
2地址线条数
1MB
16MB
4GB
虚拟地址空间
214*2地址线条数
无
4GB
64TB
三、CISC与RISC的含义及各自的特点
CISC:
复杂指令集计算机体系,复杂指令。
多种寻址方式。
微程序结构
RISC:
精简指令集计算机体系。
固定指令长度。
指令流水线处理;简化内存管理。
硬件控制简单。
单周期执行。
复杂度存于编译程序
80486八个部件=整数部件+浮点部件+分段部件+分页部件+总线部件+指令预取部件+指令部件+Cache部件
Pentium处理器主要特点:
RISC型超标量结构、高性能浮点运算器、双重分离高速缓存、64位数据总线(外部)、分支预测、系统管理方式等。
与X86兼容,RISC型超标量结构:
微处理器内具有多个指令单元,多条指令流水线,高性能浮点运算部件。
双重分离Cache:
8KB指令Cache与8KB数据Cache。
增加错误检测与报告分析功能。
64位外部数据总线。
分支指令预测。
常用指令固化及微代码改进增加系统管理方式BTB:
分支指令预测
两重分离Cache:
8KB指令Cache+8KB数据Cache
两条超标量指令流水线(整数部件):
U-流水线+V-指令流水线U-流水线可执行复杂指令和简单指令V-指令流水线仅能执行简单指令)1个时钟周期可执行两条简单指令
四、MMX与PentiumII/PentiumIII/Pentium4
1.MMX的含义及特点MMX:
多媒体扩展技术。
具有SIMD型指令(单指令执行多条数据)拥有积和运算功能;拥有饱和运算功能
2.PentiumII/PentiumIII/Pentium4的外部地址线及数据线条数及其物理地址范围
36条地址线64条外部数据线。
物理地址空间:
64GB。
物理地址范围:
0-FFFFFFFFFH
3.PentiumII和PentiumIII内部有三条超标量指令流水线,在一个时钟周期可执行三条简单指令Pentium4的主要特点(全新架构—非P6):
主频1.4GHZ~10GHz,外频100MHz,前端系统总线频率400MHZ,使外部带宽达3.2GB/S具有20级超级流水线高效乱序执行内有高速执行引擎(ALU倍速工作)新型片上Cache在SSE基础上增加144条SIMD指令(SSE2)
第六章输入输出接口技CPU与接口间的信息。
数据信息(双向)+状态信息(输入)+控制信息(输出),这些信息均通过数据总线传输
一、I/O端口编址方法及其特;存储器映射编址(统一编址)+I/O映射编址
存储器映射编址,优点:
访问I/O指令多;内存与外设地址分布相同;无需专用I/O指令。
缺点:
寻址速度慢;占用内存空间。
I/O映射编址:
优点:
I/O设备不占用内存单元,节约内存空间;指令执行速度快,缺点:
端口地址少64K端口地址:
0000H~FFFFH
共64K个8位端口、32K个16位端口、16K个32位端口输入输出控制方式及其特点
直接程序控制方式+中断控制方式+DMA控制方式
直接程序控制方式:
无条件传送方式:
不查询外设直接进行输入输出简单、经济,可靠性差。
条件传送方式:
查询外设状态,满足时进行数据传送简单、可靠性高,CPU效率低,中断控制方式:
在满足传输条件时,外设向CPU发请求传输的中断信号,CPU接受请求后进入服务程序,在中断服务程序中进行输入输出操作。
无需查询等待,CPU效率提高仍需一些与本输入输出无关的操作(如压栈保护等)。
DMA控制方式:
直接由DMA控制器硬件控制数据传输,传输过程无需CPU干预,速度快、效率高
并行通信:
含义:
指将一个字节或一个字的各位同时进行传输的一种通信方式。
特点:
传输速度快;传输的信息率高;比串行通信需要更多的通信信号线。
用途:
传输距离短、数据传输速度要求高的场合。
串行通信:
含义:
把传输的数据一位一位按顺序传送的一种通信方式(按位传输)特点:
通信线;成本低;通信速度慢。
用途:
长距离。
异步通信;含义:
字符与字符之间的传送是完全同步的,但一个字符的位与位之间是同步的
特点:
字符的发送是随机的;每一个字符传输总以一个起始位为准,然后接收方与发送方保持同步(格式的统一),最后是停止位。
通信双方可随时改变通信协议,即改变数据位、奇偶校验位和停止位长度或数据传输率。
同步通信:
含义:
同步通信去掉每个字符的起始位和停止位,把字符一个一个按顺序连接起来,以固定长度的字符串组成一个数据块(也称为帧),每个数据块前加1或2个同步字符。
在字符流同步传输中,若每个字符取相同的位数,则发送方必须在每n位时间间隔内发送一个字符。
同步通信总以同步字符(字符流传输)或标志字段(比特流传输)为数据帧发送的开始。
由于在一个数据帧内同步传输所需附加位较少,在位速率相同的情况下,其传输速度比异步方式高。
对通信双方的时钟同步要求比较高,过程控制复杂。
串行异步通信的字符格式包括:
起始位、数据位、奇偶校验位、停止位
数据位排列方式为低位在前,高位在后
异步通信这种由起始位开始,停止位结束所构成的一串二进制数称为帧
帧与帧之间时间间隔随即,一帧数据相邻位之间时间间隔相同。
5.波特率的含义及其应用
含义:
指单位时间传送二进制数的位数,一般以秒为单位
应用:
微机中常见的波特率有110,300,600,1200,2400,4800,9600,19200等。
微机最高波特率由硬件决定。
例:
已知字符格式中数据为8位,无校验,1位停止位,在1分钟内连续不断传送了69120个字符,求波特率。
解:
一个字符=1+8+0+1=10位
每秒传送的字符个数=69120/60=1152个
波特率=位/秒=1152*10=11520bits/S
6.串行异步通信标准接口
重点:
RS-232C
(1)关键引脚信号:
RXD、TXD、GND
(2)逻辑电平:
负逻辑传输(电平转换为反向)
逻辑1:
-15~-5V;逻辑0:
+5~+15V
二、并行接口芯片8255
1.内部结构及引脚信号
A、B两组控制电路,A、B、C三个数据端口
两个控制逻辑:
A组控制A口和C高4口(上半)口;B组控制B口和C下半口
控制寄存器接收方式字决定两组的工作方式
接收控制字对C口进行位操作(复位或置位)
端口A:
输入、输出、双向
端口B:
输入、输出
端口C:
一个8位数据端口或两个4位数据端口,还可单独进行位操作
引脚:
(1)与外设接口引脚:
PA7-PA0、PB7-PB0、PC7-PC0、
(2)与系统总线接口引脚:
D7-D0:
数据线、RD#与WR#读写控制信号、CS#片选信号
RESET:
复位信号,内部寄存器清除,3个数据端口被自动设为输入端口
A0、A1与读写操作的关系
A0、A1:
端口选择信号(4个端口:
3个数据端口,一个控制端口即控制寄存器端口)
2.8255工作方式
方式0(基本输入输出方式)、方式1(选通输入输方式)、方式2(双向输入输出方式)
其中:
方式0适用于所有端口,没有规定固定的用于应答式的联络信号线
方式1适用A和B口,C配合之
方式2适用A口,C配合之
3.8255控制字
方式选择控制字+C口置位复置控制字
方式选择控制字:
方式选择控制字必须写入8255控制寄存器中,控制寄存器的地址就是A0A1=11的端口地址
MOVAL,方式选择控制字
MOVDX,控制端口地址;端口号大于256,则用DX间接寻址
OUTDX,AL;写入控制寄存器
C口置位复置控制字:
单独对C端口的8位进行位操作
MOVAL,方式选择字
OUT控制端口地址,AL;方式控制字写入控制寄存器,端口号大于256则用DX间接寻址
MOVAL,置位/复位控制字;PC4=1,即使INTE=1允许内部中断
OUT控制端口地址,AL
4.编程与应用(仅限方式0)
8255地址判断方法8255与LED显示器、8255与打印机等A/D,D/A
打印机:
CPU通过8255与打印机连接,打印前先检查打印机的工作状态,当BUSY=1时表示打印机忙,则等待,BUSY=0时表示不忙,这时CPU送数到A口并给打印机的STB端送一个负脉冲的打印选通信号,使数据进入打印机数据缓冲器,打印机开始打印。
打印机处理完送入的数据后向8255发送一个应答信号ACK,这时又可继续送下一个数据,直到打印结束。
MOVAL,0A8H;方式选择字10101000B(C上半口输入PC4)
MOVDX,343H;控制端口
OUTDX,AL;方式选择控制字写入控制口
MOVCX,Counter;打印字符个数装入计数器
MOVBX,OFFSETPstrings
LP1:
MOVAL,[BX]
MOVDX,340H
OUTDX,AL;送一个字符到8255的A口
MOVDX,342H
LP2:
INAL,DX;读取C口状态(准备检查BUSY状态)
ANDAL,00010000B;屏蔽无关位,取BUSY
JZLP2;等待接收新数据
LP3:
INAL,DX;读取C口状态
ANDAL,00010000B;屏蔽无关位,取BUSY对应的PC4
JNZLP3;BUSY=1等待,直到不忙
INCBX
LOOPLP1
三、.定时计数器接口8253
1.内部结构及引脚信号
三个定时计数器:
CTC0+CTC1+CTC2
8253具有3个功能相同又相互独立的16位减法计数器,每个计数器通道具有6种工作方式
引脚:
每个定时计数器均有三个信号:
CLK+GATE+OUT
读写操作的关系(P.299表8.8)
2.8253工作方式
了解各种方式
重要掌握方式2和方式3
方式0:
中断信号发生器
(1)计数器不会重装初值,只计数一次
(2)写入出之后的下一个CLK脉冲,才开始减一计数
(3)GATE为低电平,则停止计数,并保持计数值不变
(4)在计数过程中改变初值,写完初值后,计数器按新值重新计数
方式1:
单稳负脉冲信号发生器
(1)初值N,则输出的单拍脉冲为N倍的时钟周期
(2)当计数到0后,可再次用外部触发(接至GATE端)来启动新一轮计数
(3)如果没有计数到结束,而重新触发一次,将扩展输出脉冲的宽度。
因为重新触发,将使计数器重新装入初值,重新计数减1
(4)如果在计数过程中改变初值,不影响当前一轮的计数
方式2:
速率信号发生器:
可以产生连续N倍时钟为周期的脉冲信号
写入控制字后,OUT变高电平,写入初值后的下一个时钟,计数器开始减1计数,计数到1时(不是0),OUT由高变低,经过一个时钟周期后,又变为高电平,重新开始下一轮减1计数,计数到1又改变OUT的电平,这样周而复始的工作下去
(1)自动重装计数初值
(2)计数过程可由门控信号GATE控制。
当GATE=0时,停止计数。
在GATE变高的下一个时钟使计数器恢复初值,技术重新开始。
(3)在计数过程中,计数值,对正在进行的一轮计数过程没有影响,会影响下一轮。
方式3:
方波信号发生器:
产生占空比基本为1:
1的方波
写入控制字后,OUT变高电平。
如果计数初始值n为偶数,则写入初值时开始减2计数,计数到0后,OUT改变原来的电平,计数器又重新装入初值,开始下一个周期的减2计数,直到0又使OUT电平状态发生改变。
这样周而复始
如果写入的初值为奇数,则首先进行减1计数,然后再减2计数,每一个CLK脉冲就减2计数一次,当计数到0时使OUT改变电平状态,重新自动装入初值后,进入下一个周期的计数,先减1,后减2
(1)偶数初值产生真正的方波,奇数初值产生的方波正脉冲比负脉冲宽度多一个时钟周期。
偶数是减2计数,奇数则是先行减1一次,以后再减2计数。
(2)GATE门控信号可使计数过程重新开始。
如果OUT为低,则GATE=0时使OUT立即变高,停止计数。
当GATE变高后.计数器将重新装入初值,开始新一轮计数。
(3)在计数期间改变计数初值不影响本周期计数过程,但计数到0后将以新值开始计数
方式4:
软件触发的选通信号发生器
一次有效,只要不重新写入初值,在写完初值后经历N+1个时钟周期之后,就产生一个选通脉冲,负脉冲宽度为一个时钟周期
方式5:
硬件触发的选通信号发生器
写入初值后并不开始计数,必须有外部GATE引脚触发,在此之后下一个时钟到来时开始减1计数,经历N+1个时钟周期之后,就产生一个选通脉冲,负脉冲宽度为一个时钟周期
3.8253控制字
二进制计数范围:
0000-FFFFH
BCD码计数范围:
0000-9999
最大初值:
0000
方式3的最小值为2(波形周期为2个时钟周期,0、1逻辑各占一个时钟周期)
其他方式最小值都为1(宽度为一个时钟周期)
4.编程与应用(方式0)方波信号的产生方法、8253地址判断方法,注意GATE信号的作用
(1)一般原则:
写控制字、初值
控制字写入控制寄存器对应端口,初值写入相应计数器通道对应端口
(2)初值计算
假设已知8253相应通道的CLK端接入的时钟频率为fCLK,周期记为TCLK=1/fCLK,要求产生的周期性信号频率为F(周期为T)或定时时间为T(F=1/T),则所需计数初值n为:
在计算时注意时间和频率的单位一致性:
M----微秒K----毫秒Hz----秒
已知8254各通道时钟接8MHz信号,端口地址为700H、702H、704H和706H,要求在OUT0产生周期为10us的方波,OUT1产生2KHz的连续脉冲信号,OUT2产生一个最大的负脉冲。
分析:
OUT0:
初值=10us*8MHz=80方式3
OUT1:
初值=8MHz/2KHz=4000方式2
OUT2:
初值=0方式1
●OUT0:
初值=10us*8MHz=80方式3
●MOVDX,706H;控制端口地址
●MOVAL,00010110B;CTC0控制字
●OUTDX,AL
●MOVDX,700H;CTC0口地址
●MOVAL,80;CTC0初值
●OUTDX,AL
●OUT1:
初值=8MHz/2KHz=4000方式2
●MOVDX,706H;控制端口地址
●MOVAL,01110100B;CTC1控制字
●OUTDX,AL
●MOVDX,702H;CTC1口地址
●MOVAX,4000;CTC1初值
●OUTDX,AL;先写低字节
●MOVAL,AH;取高字节
●OUTDX,AL;后写高字节
●OUT2:
初值=0方式1
●MOVDX,706H;控制端口地址
●MOVAL,10110010B;CTC2控制字
●OUTDX,AL
●MOVDX,704H;CTC2口地址
●MOVAL,0;CTC2初值
●OUTDX,AL;先写低字节
●OUTDX,AL;后写高字节
8253口地址为158H~15BH,要求计数器0工作在方式0,计数初值为1000,二进制计数;计数器1工作在方式1,计数初值为86,BCD码计数;计数器2的OUT端产生最大宽度的方波,写出8253的初始化程序。
根据题意,确定相应通道的控制字及初值为:
计数器0的控制字:
00110000B=30H初值:
1000(超过256,用16位计数)
计数器1的控制字:
01010011B=53H初值:
86(小于256,用低字节计数)
计数器2的控制字:
10110110B=B6H初值:
0000(最大值二进制0,16位计数)
第七章中断系统
一、中断与异常
1.中断的含义
中断是微处理器与外部设备进行信息交换的一种方式
指微处理器在执行正常程序过程中,当出现某种异常情况或某种外部设备请求时,处理器暂时停止正在执行的程序,转而去执行某一特定的程序,而执行后返回原来被终止的程序处继续向下执行。
2.异常的三种类型及其特点
失效:
在引起异常之前被检测到,处理完能正常返回异常处,重新执行该指令。
(故障)
陷井:
引起异常之后被检测到,处理完能正常返回异常处,执行下一条指令。
中止:
不能确定引起异常的位置,故不能返回原处,因此重建系统。
(夭折)
3.中断与异常的根本区别
中断处理异步发生的外部事件的请求;异常处理同步发生的内部事件的请求。
(1)中断处理异步发生的外部事件。
(各种外部设备数据传送的请求及时钟中断)
(2)异常处理同步发生的内部事件。
(处理指令失效)
(3)硬件中断是作为外部事件的结果而发生的。
(可屏蔽中断和不可屏蔽中断)
(4)中断是在当前指令执行完后才去执行服务程序的,在中断处理程序完成中断服务后,程序继续执行被中断指令之后的指令。
二、中断过程(五个)
中断请求、中断判优(判断中断优先级)、中断响应、中断处理、中断返回
(1)中断请求:
中断源发出中断请求信号
外部中断源主要有:
(1)I/O设备,如键盘、显示器、打印机等。
(2)数据通道,如软、硬磁盘,磁带等。
(3)实时钟,如外部所需的定时电路等。
(4)故障源,如掉电、存储器奇偶校错等。
内部中断源主要包括:
(1)CPU指令产生异常,如被0除,溢出,单步等。
(2)程序执行INT软件中断指令,如INT19H等。
(2)中断判优:
判断中断优先级
(3)中断响应:
对于可屏蔽中断:
(1)处理器接到中断申请,处理完当前指令即进入响应周期。
(2)第二阶段即中断响应周期,在其间CPU向外部中断控制器发送两个响应脉冲信号INTA。
第一个响应脉冲通知中断控制器,已经响应外部中断请求,让中断控制器提供中断类型号。
第二个响应脉冲,CPU取走中断类型号。
(3)将标志寄存器中的内容压入堆栈保护,然后清IF和TF标志,以禁止INTR引脚以及陷阱和单步中断。
(4)将断点地址压入堆栈(CS:
EIP或CS:
IP)。
断点地址:
指中断时CPU待执行的下一条指令对应的逻辑地址。
顺序:
先压入断点地址的CS,后压入偏移地址EIP(或IP)。
(5)CPU得到中断类型号码n后,通过中断类型号与中断服务程序入口地址的关系找出该类型对应的段基地址和偏移地址,从而转入中断服务程序入口地址。
完成中断响应任务。
(4)中断处理:
1.保护现场保护现场实质:
将重要信息压入堆栈。
(PUSH)
2.开中断目的:
开放所有可屏蔽中断,以允许高级中断嵌套。
(STI)
3.执行中断服务程序
4.关中断目的:
使用关中断指令CLI关中断以确保可靠有效地恢复现场。
(CLI)
5.恢复现场恢复现实质:
将原来压入堆栈中的内容弹出来。
恢复现场的指令是POP。
在恢复现场时必须注意堆栈操作的原则:
先进后出(FILO)。
(5)中断返回:
中断服务程序的最后一条指令都无一例外地使用中断返回指令(如IRET/IRETD)。
中断返回的目的:
使原来在中断响应过程中的断点地址和标志寄存器中的内容,依次从堆栈中弹出,以便继续执行原来的程序。
三、中断类型号与