安徽大学微机原理期末复习

1. 计算机的硬件组成和工作原理(程序存储与程序控制)

  • 计算机硬件系统由控制器、运算器、存储器、输入设备和输出设备组成。
  • CPU由ALU(算术逻辑运算单元)和CU(控制单元)构成。
  • 冯·诺伊曼体系结构:内存、CPU、I/O通过总线进行通讯,内存负责存储数据和程序,CPU负责完成指令产生的算术运算和逻辑运算,I/O负责与外界通讯。
  • 8086的CPU包括总线接口单元(BIU)和指令执行单元(EU)构成,BIU事CPU与外部存储器以及IO端口之间交换数据的接口电路,其负责从内存指定单元取出指令,送到6字节的指令队列中排队,等待执行。执行指令所需要的操作数,也有BIU从指定的内存单元中获取。EU负责执行指令,从BIU的指令队列中取出指令送到EU控制器。
  • BIU包括:段寄存器、IP寄存器、指令队列、地址加法器、总线控制逻辑
  • EU包括:通用寄存器、标志寄存器、ALU、EU控制器

2. 进制的转换;原码、反码、补码的含义。

BCD码和ASCII码(压缩与非压缩)

  • 原码、反码、补码只针对负数,正数不会变化,并且在负数中,符号位不改变。
  • 非压缩BCD码,四位二进制数表示一位BCD码,一个字节表示两位BCD码,即一个字节存放两个十进制数,如12H=0001 0010B,表示十进制数12。
  • 压缩BCD码:一个字节存放一个一位十进制数,高四位不做规定(无效),低四位表示该二进制数。
  • ASCII码占7位二进制位(扩展的占8个二进制位),选择四类国际上使用最多的字符,共128种。

计算机的字长、微处理器内部的结构

(EU、BIU、指令队列、标志寄存器)。

  • CPU的位数:即处理器的字长。如16位处理器,是指数据总线条数和内部寄存器位数均为16位
  • 一个字节有8个bit位,一个字有两个字节,16个bit位
  • 8位的微处理器地址总线有16条;16位的处理器地址总线有20条;32位的处理器地址总线有32条。能访问的地址空间是 2 n   b i t 2^n \ bit 2n bit(n为地址总线条数)
  • 8086的指令队列为6字节,8088为4字节
  • 8086的外部数据总线为16位,8088为8位

微处理器内部寄存器的功能,通用寄存器。段寄存器

  • 通用寄存器:AX,BX,CX,DX
通用寄存器专门用途
AX累加器,乘除法中有专门用途
BX基址寄存器,用于存放偏移地址
CX计数寄存器
DX数据寄存器,乘除法以及I/O端口操作用
  • 专用寄存器:IP,SP,FLAGS。IP是用户程序不可以进行存取操作的,只能用BIU自动修改。
  • 段寄存器:CS(代码段);DS(数据段);SS(堆栈段);ES(附加段)
  • DS:SI配合可以指向源串首地址,ES:DI可以指向目的串首地址。
  • 通过SI、DI、BX、BP可以灵活在存储器中寻找操作数,并且只有BP、BX、SI、DI可以用在[ ]内进行单元寻址,且只有BX+SI、BP+SI、BX+DI、BP+DI的组合是合法的,SI+DI等是不允许的。
  • 标志寄存器的几个标志:OF、DF、IF、TF、SF、ZF、AF、PF、CF
标志寄存器专门用途
CF进位标志,无符号加减运算以及移位操作有意义,当最高位产生进位时,置为1
PF奇偶校验。运算结果低8位有偶数个1,则置为1
AF辅助进位标志。8位加减运算时,低4位向高4位进位或借位时,其置为1。仅在BCD数运算时有意义
ZF零标志位。运算结果为0的时候置为1
SF符号标志。运算结果位负,置为1
OF溢出标志。仅带符号数运算有意义。最高位进位(借位) 次高位进位(借位)
TF单步标志。若为1,CPU处于单步工作方式,每执行完一条指令产生一次单步中断
IF中断标志,若为1,则允许CPU响应可屏蔽中断
DF方向标志。DF=0:数据从低地址到高地址方向,SI、DI递增;DF=1:数据从高地址到低地址方向,SI、DI递减。
  • 时钟周期、总线周期(时序),逻辑地址:段地址*10H+偏移地址=物理地址。
  • 时钟周期,CPU中最小的周期,是CPU最基本的时间单位,由主频决定。( T = 1 f T=\frac{1}{f} T=f1
  • 总线周期:CPU访问(读或写)一次存储器或IO所花的时间称一个总线周期,一个总线周期通常包括四个时钟周期 T 1 T_1 T1 , T 2 T_2 T2 , T 3 T_3 T3 , T 4 T_4 T4
  • T 1 T_1 T1 周期内,CPU将要访问的存储单元或IO的地址送到地址总线上。
  • T 2 T_2 T2 T 3 T_3 T3时,CPU与数据总线进行读/写操作。 T 3 T_3 T3之后,若外设速度跟不上CPU,即外设还未准备就绪,外设通过READY控制线告诉CPU,CPU则在 T 3 T_3 T3 之后插入一个等待周期 T w T_w Tw,若外设就绪,则通过使READY信号有效使CPU自动脱离等待状态而进入 T 4 T_4 T4
  • T 4 T_4 T4:从总线上撤销数据,各个控制信号和状态信号无效,禁止收发数据。
  • T x T_x Tx:若一个总线周期之后不立即进入下一个周期则执行空闲周期。
  • 指令周期由若干个机器周期组成,机器周期时间包含若干个时钟周期。
  • 堆栈的概念;SP的指向,每次操作是2个字节,SS/SP的内容变化规律。
PUSH:SP先减2腾出空间然后数据入栈
POP:SP先加2,然后数据出栈
  • 8086最大工作方式和最小工作方式的基本特点8086的存储器管理方式(BHE和A0)。最大工作方式和最小工作方式。最大工作方式中,地址锁存器8283,收发器8286,总线控制器8288和8259A的作用。
(1)最小工作模式下,存储器和所有的IO口的信号均有CPU产生,总线控制逻辑电路被减到最小。当最大工作模式的时候,构成较大规模的应用系统,包含两个或者两个以上的处理器。他们的控制信号必须由外部产生,需要加一个8288总线控制器共同形成系统总线信号。
(2)地址锁存器8283
(3)总线控制器8288
(4)收发器8286为必选器件
  • 8086的管脚如READY,RESET,INTR,NMI,HOLD等。
  1. 8086与8088引脚的区别:8086是 M / I O ‾ M/\overline{IO} M/IO,而8088是 I O / M ‾ IO/\overline{M} IO/M;在8086中,有高8位总线允许信号 B H E ‾ / S 7 \overline{BHE}/S_7 BHE/S7,8088中有最小模式信号 S S 0 ‾ \overline{SS_0} SS0
  2. 8086的 B H E ‾ \overline{BHE} BHE A 0 A_0 A0使得8086存在基地址库和偶地址库。
  3. 8086的地址/数据复用线是16位 A D 15 ~ A D 0 AD_{15}~AD_0 AD15AD0;8088有 A D 7 ~ A D 0 AD_7~AD_0 AD7AD0复用, A 8 ~ A 15 A_8~A_{15} A8A15仅作为地址线使用。
  4. N M I NMI NMI:非屏蔽中断请求信号,输入,上升沿触发。
  5. I N T R INTR INTR:可屏蔽中断请求信号,输入,高电平有效。
  6. I N T A ‾ \overline{INTA} INTA:可屏蔽中断响应信号:可屏蔽中断响应信号
  7. H O L D HOLD HOLD:总线保持请求信号,输入,高电平有效。
  8. H L D A HLDA HLDA:总线保持响应信号,输出,高电平有效。
  9. C L K CLK CLK:系统时钟,输入,占空比为1/3。
  10. R E S E T RESET RESET:复位信号,输入,高电平有效。复位脉冲至少持续4个时钟周期。复位后,CS设置为0FFFFH,IP、DS、SS等清零,重启CPU。
  11. R E A D Y READY READY:数据“准备好”信号线,输入,高电平有效。
  12. T E S T ‾ \overline{TEST} TEST:等待测试信号,输入。与WAIT指令结合使用,执行WAIT指令时,每5个时钟周期测试一次TEST。
  13. A L E ALE ALE:地址锁存允许信号,输出,高电平有效。是8086/8088给地址锁存器的控制信号。
  14. D N E ‾ \overline{DNE} DNE:数据允许信号,输出低电平有效。该信号决定数据总线上的数据是否有效。
  15. D T / R ‾ DT/ \overline{R} DT/R:数据发送/接收信号,输出。该信号用来控制数据的传送方向。
  16. I O / M ‾ IO/\overline{M} IO/M存储器I/O端口控制信号,输出。该信号用来区分CPU是进行存储器访问还是I/O端口访问(对8086,电平定义不同)。
  17. W R ‾ \overline{WR} WR:写信号,输出,低电平有效。
  18. R D ‾ \overline{RD} RD:读控制信号,输出,低电平有效。当=0时,表示CPU正对存储器或I/O端口的读操作
  19. M N / M X ‾ MN/\overline{MX} MN/MX:最小/最大方式控制信号,输入。
  20. S S O ‾ \overline{SSO} SSO:系统状态信号输出。与IO/M信号和DT/R信号一起用来决定最小模式下当前总线周期的状态。
  • 寻址方式(数据,堆栈,程序),要求会判断与地址转移有关的寻址方式及物理地址计算。
  1. 立即寻址:立即数作为操作数。如:MOV AL,26H
  2. 寄存器寻址:操作数包含在寄存器里面。如:MOV CL,AH。值得注意的是前后数据长度要匹配。可以操作的寄存器有:AX,BX,CX,DX
  3. 直接寻址方式:操作数在内存中,通过物理地址直接访问数据。如:MOV AX,[20000H]。这里有个默认的段,一般来说,没有指定段前缀的话都默认使用数据段寄存器DS。同时,有个段超越的概念,就是指定段寄存器,如:MOV AX,ES:[500H]
  4. 寄存器间接存志,指令中的寄存器中的值不是操作数本身,而是操作数的有效地址,如:MOV BX,[SI]。这类指令允许的寄存器是BX,BP,SI,DI。其中,指令若是用到了BP寄存器,则默认的段寄存器为堆栈段寄存器SS,否则是DS。
  5. 寄存器相对寻址:操作数的有效地址是一个基址或变址寄存器的内容与指令中指定的8位或16位位移量之和。如:MOV BX,[SI+100H]
  6. 基址变址寻址方式:例如:MOV AX,[BX+SI]
  7. 相对基址加变址: MOV AX,[AX+SI+200H]
  8. 段内转移与段间转移
类型方式寻址目标指令举例
段内转移直接立即短转移(8位)JMP SHORT 标号
立即近转移(16位)JMP NEAR PTR 标号
间接寄存器(16位)JMP BX
存储器(16位)JMP WORD PTR [BX+500H]
段间转移 直接立即转移(32位)存储器(32位)
  • 常用指令;MOV、PUSH、POP、加法/减法/比较运算、串操作、逻辑运算、移位、循环(如LOOP、LOOPNE、LOOPE、REP等)、条件转移指令(如JG/JAE等),CALL和INT。对标志位的影响(如INC、DEC、MOV、加法指令等)。
  1. MOV: CS不能做目的操作数,IP不能做源操作数和目的操作数,目的操作数不能是寄存器,不能从段寄存器到段寄存器,不能从内存到内存。
  2. OFFSET:取偏移地址
  3. PUSH、POP:进栈和出栈,堆栈的最大容量为64KB
  4. XCHG:交换目的操作数和源操作数。段寄存器不能是操作数,不能直接交换两个内存。
  5. XLAT:转换表:将转换表的起始地址放在BX里面,将需要访问表的对应数据的位置(位移量)放在AL里,执行该指令后,根据位移量将对应表中结果放在AL里面。如一个表TABLE存放了2,4,8,16,若我要查表找到3的平方,则MOV AL,3,然后取表的地址,MOV BX,OFFSET TABLE,然后执行XLAT TABLE后,AL=8
  6. IN,OUT 端口地址: 读取或输出端口地址,端口地址可以是立即数,也可以存放在DX寄存器里
  7. LEA:取有效地址。LEA BX,TABLE = MOV BX,OFFSET TABLE,但有些情况必须用LEA。LEA要求源操作数必须是内存,目的操作数必须是一个除了段寄存器以外的一个16为寄存器。
  8. LDS:将双子指针送到寄存器和DS,通常用SI做目的操作数寄存器。如DS=1200H,(12450)=F346H,(12452)=0A90H,则LDS SI,[450H] 后,SI=F346H,DS=0A90H
  9. LES:与LDS一样,不过高位部分给了ES,通常用DI做目的操作数寄存器。
  10. LAHF:标志传送指令,将标志寄存器的标志送到AH
  11. SAHF:与LAHF相反,将AH存的值送到标志寄存器
  12. PUSHF: 标志寄存器内容入栈,对标志寄存器无影响,同时修改堆栈指针SP=SP-2
  13. POPF:标志寄存器出栈,改变标志寄存器内容,同时修改堆栈指针SP=SP+2
  • 算数运算指令:
类型指令功能要求
加法ADD加法不能同为内存,目的操作数不能为立即数,类型必须一致,影响CF、OF、PF、SF、ZF、AF,(INC不影响CF)对于无符号数只关心ZF和CF,有符号数只关注OF,SF,ZF
INC增量
ADC带进位加法
AAA加法的ASCII调整
DAA加法的十进制调整
减法SUB减法目的操作数不能为立即数,影响CF、OF、PF、SF、ZF、AF,如果内存是操作数,那么必须说明类型是字还是字节
SBB带借位减法
NEG取负
CMP比较
AAS减法的ASCII调整
DAS减法的十进制调整
DEC减量 不影响CF
乘法MUL无符号乘法格式:MUL 源操作数(不能为立即数)
与AL相乘,结果存在AX
与AX相乘,结果存在DX,AX
如果内存是操作数,那么必须说明类型是字还是字节
IMUL整数乘法
AAM乘法的ASCII调整
除法DIV无符号除法格式:DIV 源
16位被除数放在AX
源可以是寄存器也可以是立即数和内存
AL是商,AH是余数
IDIV整数除法
AAD除法的ASCII调整
CBW字节扩展为字AL字节的符号扩充到AH
CWD字扩展为双字A把AX扩充到DX
  • 逻辑和移位
类型指令功能
逻辑运算NOT取反
AND
OR
XOR异或
TEST测试
算数逻辑移位SHL/SAL逻辑/算术左移
SHR逻辑右移
SAR算术由移
循环移位ROL循环左移
ROR循环右移
RCL带进位的循环左移
RCR带进位的循环右移
  • 字符串处理指令:源串位于当前数据段中,由DS寻址,SI做指针,允许源串使用段超越前缀修改段地址;目的串必须位于当前附加段中,不允许断超越前缀修改短地址,使用ES:DI。标志位DF决定数据传送方向。DF=0为递增方向,即每次串操作SI和DI增加,当DF=1时为递减方向,每次串操作SI,DI递减。
指令名称字节/字操作字节操作字操作
传送MOVS 目的串,源串MOVSBMOVSW
比较CMPS 目的串,源串CMPSBCMFLAGS
扫描SCASSCASBSCASW
转入LODSLODSB LODSW
存储STOS 目的串STOSBSTOSW
  • 重复条件指令:REP:无条件重复;REPE/REPZ:相等/结果为零则重复;REPNE/REPNZ:不相等/不为零则重复。
  • 循环条件控制:LOOP、LOOPE/LOOPZ、LOOPNE/LOOPNZ、JCXZ(CX=0则转移)。
  • 跳转指令JMP
指令助记符测试条件指令功能
传送MOVS 目的串,源串MOVSB
比较CMPS 目的串,源串CMPSB
扫描SCASSCASB
转入LODSLODSB
存储STOS 目的串STOSB
  • 重复条件指令:REP:无条件重复;REPE/REPZ:相等/结果为零则重复;REPNE/REPNZ:不相等/不为零则重复。

  • 循环条件控制:LOOP、LOOPE/LOOPZ、LOOPNE/LOOPNZ、JCXZ(CX=0则转移)。

  • 跳转指令JMP
    在这里插入图片描述

  • 间接标志条件转移指令
    在这里插入图片描述

  • 中断指令、CALL指令、转移指令的差异:
    JMP是无条件转移指令,CALL是子程序调用指令。指令JMP、CALL的区别在于,JMP指令控制程序直接跳转到目标地址执行程序,程序总是顺序执行,指令本身无堆栈操作过程。CALL指令跳转到指定目标地址执行子程序,执行完子程序后,会返回CALL指令的下一条指令处执行程序,执行CALL指令有堆栈操作过程。INT虽然也是一种远调用,但一般只用于调用中断例行程序(又称中断服务程序)。执行中断指令时,首先要入栈保存调用程序执行的现场,即当时的标志寄存器的值和断点的地址,然后,根据中断类型号(n×4)到中断向量表中取得中断例行程序的入口地址,分别送给IP和CS,以实现调用中断例行程序的功能。并且INT指令执行后,把IF和TF置0,但不影响其它标志位。

  • 内存分类及特点,引脚模型,规格表示方式?存储器扩展,线选法、全译码、部分译码的特点。8088内存接口电路分析及设计。
    (1) 存储器的分类:存储器分为内部存储器和外部存储器。其中外部存储器包括磁带、磁盘、光盘、闪存卡等。内存存储器分为随机存储器(RAM)和只读存储器(ROM),其中RAM断电丢失信息,ROM断电不丢失,RAM分为动态RAM(DRAM)和静态RAM(SRAM)。DRAM需要不断刷新数据保持数据。
    (2)规格表示方式:单位是bit,如64K×4的规格是 2 6 ∗ 2 10 ∗ 2 2 = 2 18 2^6*2^{10}*2^2=2^{18} 2621022=218字节,表示内存的位数是4,字节宽度是64K。其代表的含义是这一个地址线访问半个字节,所以该内存所需的地址线是 l o g 2 ⁡ 64 + 10 = 16 log_2⁡64+10=16 log264+10=16根地址线,由于位数是4,则数据线是4根。
    (3)存储器的扩展包括字扩展和位扩展,其中字扩展的含义是8K×8扩展为16K×8,位扩展的含义是8K×16。
    (4) 线选法:直接用高位的某一位做片选信号,电路简单,地址空间浪费
    大,部分地址线未参与译码会出现地址重叠现象,芯片较多的时候会出现可用地址空间不连续的情况。
    (5) 全译码法:全部高位地址参与译码,每个存储单元的地址都是唯一
    的,不存在地址重叠,译码电路复杂。
    (6) 部分译码法:只对高位地址线的某几位进行译码,生成片选信号。部
    分译码可以简化译码电路,但也存在地址重叠,浪费地址空间,对小系统影响较小。
    (7) 需要掌握8088结合74LS138的全译码方式,线选法和部分译码只需了解特点。

  • I/O端口地址(固定,可变),译码电路设计(要求能根据38译码电路得到地址范围),指令IN和OUT。数据的传送方式及特点(程序控制(要求掌握查询方式)、中断、DMA。
    (1) I/O寻址方式包括独立编址和内存映像
    (2) 独立编址:内存地址空间与I/O地址空间相互分离,并且用地址线的低16位寻址IO端口,其中系统较小的时候(I/O设备少于256个),可以只用低8位(固定)。
    (3) 内存映像:I/O地址占用部分内存地址,I/O地址生成方式与内存完全一样:由20条总线生成。所以,访问I/O设备与访问内存无区别,并且不能使用IN/OUT指令,而是内存传送指令。
    (4) I/O端口的译码电路,利用74LS138设计译码电路。同内存译码电路类似。
    (5) IN/OUT指令的用法

  • CPU与外设间的数据传送方式:主要有程序控制方式(无条件传送和条件(查询)传送)、中断方式和DMA方式三种,前两种是软件实现,DMA是硬件实现。中断和DMA需要了解概念,不考编程。重点掌握查询方式。
    在这里插入图片描述
    (1) 8259A的工作原理
    (2) 一个I/O地址称为端口。
    (3) I/O端口寻址分为直接寻址和间接寻址。直接寻址的目的操作数是8位立即数,访问的端口范围是00~FFH,共256个。间接寻址的目的操作数由DX提供,能访问64K个I/O端口。

  • 中断的基本概念(申请(每条指令结束时都会检测INTR)、响应(入栈)、返回过程(出栈)各完成了哪些动作?)。8086CPU对中断请求响应优先级和过程,中断类型码(0~4号中断的作用)?中断类型号物理地址计算。
    (1) 中断向量表位于存储器的前1024字节中,地址为00000H~003FFH
    (2) 包含256个不同的4字节中断向量
    (3) 中断向量与中断向量表:中断服务程序的入口地址成为中断向量,存储各个中断服务程序的连续地址空间成为中断向量表。
    (4) 中断向量用0~255的中断类型号表示。8086/8088规定了前5个中断向量:INT 0:除法错;类型1:单步或陷阱(TF=1);类型2:非屏蔽硬件中断;类型3:断点中断;类型4:溢出中断。
    (5) 中断优先级:除法错误、INT n、INTO –> NMI –> INTR -> 单步中断(优先级从高到低)
    (6) 硬件中断:

  1. INTR可屏蔽中断(优先级较低),只有IF=1的时候才 允许响应此引脚的中断请求,CPU执行周期中,在最后一个周期会对INTR采样,若有中断请求则在下一个总线周期立即进入中断总线周期。
  2. NMI不可屏蔽中断(优先级较高),边沿脉冲触发,不受中断标志位IF的影响,自动产生类型号为2的中断(用来应对紧急情况如I/O出错,掉电、协处理器异常等)

(7) 中断响应过程:标志寄存器入栈 ->清除中断标志位IF和陷阱标志TF ->代码段寄存器CS压入堆栈 ->指令指针IP压入堆栈 ->取出中断向量内容,然后送入CS,IP,使下一条指令进入中断服务程序。
(8) IRET:中断返回。中断结束后,执行IRET,之后会恢复断点的CS,IP出栈,然后标志寄存器出栈,最后返回主程序。

  • 8259的基本概念,内部寄存器及其功能(ISR, IMR, IRR);级联、屏蔽方式、优先级工作方式(优先级自动循环方式原理?)。初始化命令字与操作命令字,初始化流程?(不考编程)(不出大题)
    在这里插入图片描述在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 8253的端口特性、每种工作方式及其特点;要求会编程。(方式2和方式3结合使用)
    (1) 8253 的主要功能
    1. 具有三个独立的16位计数通道;
    2. 每个计数通道可按二进制或二-十进制计数;
    3. 每个计数通道的计数速率可达2MHz;
    4. 每个计数通道有六种工作方式;
    5. 全部输入输出都与TTL电平兼容。
    (2) 方式0——计数到零产生中断请求 (特点:1. 一次写入,不再重复;2. 在计数过程中,可由GATE信号控制暂停计数;3. 在计数过程中也可改变计数值。)
    (3) 方式1—硬件可重复触发的单稳态触发器(特点:1. 在CPU写入计数初值后,计数器并不开始计数,直至门控信号GATE上升沿(即门控触发信号)出现,并在其下一个CLK脉冲的下降沿,CR的内容送入CE,同时使OUT输出变为低电平,然后开始对随后的CLK脉冲进行减1计数;2. 由于GATE上升沿的触发,使OUT输出端产生一个宽度为N个CLK周期的负脉冲。此后,若再次由GATE上升沿触发,则输出再次产生一个同样宽度的负脉冲。)
    (4) 方式2——分频器(特点:1. 不用重新设置计数值,通道能连续工作,输出固定频率的脉冲。2. 如果计数初值为N,则每输入N个CLK脉冲,输出一个负脉冲。负脉冲宽度为1个CLK周期,重复周期为N倍的CLK周期。3. 如果在计数过程中,CPU重新写入计数值,则对于正在进行的计数无影响,而是从下一个计数操作周期开始按新的计数值改变输出脉冲的频率。)
    (5) 方式3——方波发生器(特点:1. 若计数初值N为偶数,则输出波形是周期为N个CLK周期的对称方波;若计数初值N为奇数,则输出波形是周期为N个CLK周期的基本对称矩形波,其高电平持续时间比低电平持续时间多一个CLK周期。2. 如果在计数过程中,GATE信号变低,则暂停现行计数过程,直到GATE再次有效,将从计数初值开始重新计数。3. 如果要求改变输出方波的频率,则CPU可在任何时候重新写入新的计数初值,并从下一个计数操作周期开始改变输出方波的频率。)
    (6) 方式4——软件触发选通(特点:1. 当写入控制字后,OUT输出为高。当写入计数初值后计数器即开始计数(相当于软件触发启动),当计数到0后,输出变低,经过1个CLK周期,输出又变高。2. 方式4不能自动重复计数,即这种方式计数是一次性的。3. 每次启动计数都要靠重新写入计数值,所以称为“软件触发选通”。)
    (7) 方式5—硬件触发选通(特点:1. 设置了控制字后,输出为高。2. 在设置了计数初值后,计数器并不立即开始计数,而是由门控信号GATE的上升沿触发启动。3. 当计数到0时,输出变低,经过一个CLK周期,输出恢复为高,并停止计数。4. 要等到下次门控GATE信号的触发才能再计数,即方式5的计数是一次性的。)
    (8) 方式2(分频器)、方式4(软件触发选通)和方式5(硬件触发选通),它们的输出波形相同,都是宽度为1个CLK周期的负脉冲。区别是,方式2是自动重复工作的,而方式4需由软件(设置计数值)触发启动,方式5需由门控GATE信号触发启动。
    (9) 方式5(硬件触发选通)与方式1(硬件触发单稳),触发信号相同,但输出波形不同。方式1输出为宽度是N个CLK周期的负脉冲(计数过程中输出为低);方式5输出为宽度是1个CLK周期的负脉冲(计数过程中输出为高)。
    (10) 在6种工作方式中,只有方式0在写入控制字后输出为低;其余5种方式,都是在写入控制字后输出为高。
    (11) 6种工作方式中的任一种方式,只有在写入计数初值后才能开始计数。方式0、2、3、4都是写入计数初值后,计数过程就开始了。方式1、5在写入计数初值后,需由外部GATE信号的触发启动,才能开始计数过程。
    (12) 6种工作方式中,只有方式2(分频器)和方式3(方波发生器)为自动重复工作方式,其他4种方式都是一次性计数,要继续工作需要重新启动。
    (13) 当采用二进制计数时,如果是8位二进制计数(计数值≤256),则在8253初始化编程的传送指令“MOV AL, n”中,n可以写成任何进制数(二进制、十进制或十六进制)的形式;
    (14) 如果是16位二进制计数(计数值≤65536),一种方法是先把计算得到的十进制计数初值n转换成4位十六进制数(即16位二进制),然后分两次写入8253的指定端口
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 6
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值