1.冯诺依曼型计算机基本特点
- 计算机由运算器,控制器,存储器,输入设备和输出设备5部分组成
- 采用存储程序的方式,程序和数据放在同一个存储器中,并以二进制码表示
- 指令由操作码和地址码组成
- 指令在存储器中按执行顺序存放,由指令计数器(即程序计数器pc)指明要执行的指令所在的存储单元地址,一般按顺序递增,但可以按运算结果或外部条件而改变
- 机器以运算器为中心,输入输出设备与存储器间的数据传送都通过运算器
2.电子计算机发展5个阶段
- 第一代计算机--电子管计算机阶段
- 第二代计算机--晶体管计算机阶段
- 第三代计算机--集成电路计算机阶段
- 第四代计算机--微型计算机和巨型计算机阶段
- 第五代计算机--中国的智造阶段
3.一条指令由操作码和地址码组成
- 操作码:规定该指令执行什么样的运算(或操作)
- 地址码:规定对哪些数据进行运算,通常表示的是数据地址
HLT 为停机指令
4.组成计算机基本部件的基本功能
5.各部件间来往的信号可分成三种类型
地址 数据 控制信号
6.信号通过总线传送
CPU(或其他设备)经地址总线向存储器或输入输出设备发送地址,使得计算机各个部件中的数据能根据需要互相传送。输入输出设备和存储器有时也向CPU送回一些信号,CPU可根据这些信号来调整本身发出的控制信号。现代计算机还允许输入输出设备直接向存储器提出读写要求,控制数据传送。
7.翻译程序有编译程序和解释程序两种
- 编译程序是将人们编写的源程序中全部语句翻译成机器语言程序后,再执行机器语言程序。假如一个题目需要重复计算几遍﹐那么一旦翻译以后﹐只要源程序不变,不需要再次进行翻译。但源程序若有任何修改,都要重新经过编译。
- 解释程序则是在将源程序的一条语句翻译成机器语言以后立即执行它(而且不再保存刚执行完的机器语言程序),然后再翻译执行下-一条语句。如此重复,直到程序结束。它的特点是翻译一次只能执行一次,当第二次重复执行该语句时,又要重新翻译,因而效率较低。
8.操作系统
操作系统合理地组织计算机的工作流程,管理和分配存储空间,控制和管理外部设备,并提供给用户使用计算机的良好界面﹐使用户不必了解硬件和软件的细节就可较方便地使用计算机。
操作系统中控制和管理外部设备的程序称为BIOS(基本输入输出系统)
当前用户的应用程序一般是用高级语言(如C++,FORTRAN和Java等)编写的,是由英文字母、数字和运算符号等按照一定的语法规则组成的。先将其翻译成操作系统支持的表达形式,再翻译成机器语言程序,才能在计算机硬件上运行,计算机系统的多级层次结构如上图
图中的“中间件/平台级”在当前的计算机系统中还不是必须设置的,由于应用程序与操作系统之间的通信接口尚未标准化,造成了在不同计算机上编写的应用程序不能相互交换使用(即缺乏互操作性),期望经过专家讨论,能在操作系统之上形成较为标准的平台,降低上述弱点造成的影响。
9.系统软件和应用软件
- 系统软件:当前计算机中使用的系统软件(高级语言的编译程序、中间件、操作系统等(图1.2的前三层))需要翻译成机器语言后在用户的计算机中存放,以便于用户的使用
- 虚拟计算机:计算机硬件是实际存在的硬件,配上操作系统,就是虚拟计算机(图1.2后两层)使用不同的操作系统,就形成不同的计算机
- 应用软件:广泛应用计算机的结果,在科学计算﹑数据处理、商业经营、经济管理、工.业控制、工程设计、个人消费和娱乐等领域中开发出各自的程序,称为应用软件
10.计算机网络基础
计算机网络
地理位置不同,并具有独立功能的多个计算机系统,通过通信设备和线路互相连接,实现信息交换和资源共享的系统
光传输系统
传输介质-光缆 光源(发光二极管LED/激光二极管) 接收信号的检测器(光电二极管)
网络
局域网 城域网 广域网
网络协议
ISO/OSI基本参考模型
为了将不同类型、不同操作系统的计算机互连起来形成计算机网络,实现资源共享.需要有一个共同遵守的标准或协议。国际标准化组织(ISO)提出了“开放系统互连基本参考模型(SI(Open System Inter-Connection-basic reference model)”,即ISO/OSI参考模型。
IP协议根据其版本分为IPv4和IPv6协议
(1) (IPv4)地址
TCP/IP协议规定,每台连到Internet的主机地址长4字节(32位),用点号分隔的4个十进制数表示。例如,166.111.16.5是某台指定计算机的IP地址。
(2)IPv6地址
长度为128位﹐它含有的地址数是3.4×103* ,能够为所有可以想象出的网络设备提供一个全球唯一的地址。128位地址被划分为8个16位部分,每个部分用十六进制表示。
11.什么是组合逻辑电路
如果逻辑电路的输出状态仅和当时的输入状态有关,而与过去的输入状态无关,称这种电路为组合逻辑电路
12.译码器
n个输入,2的n次方(或少于)个输出,当输入为某一个组合时,对应的应该有一个输出为0(或为1),其余的输出均为1(或为0)
用途:把输入的代码译成相应的控制电位,以实现代码所要求的工作。例如地址译码
13.什么是时序逻辑电路
如果逻辑电路的输出状态不但和当时的输入有关,而且还与电路在此以前的输入状态有关,称这种电路为时序逻辑电路
14.数据符号的表示
15.BCD码
有权码
表示一位十进制数的二进制码的每一位有确定的权。一般用8421码,其4个二进制码的权从高到低分别为8、4,2和1。用0000,0001,…、1001分别表示0、1、…、9,每个数位内部满足二进制规则,而数位之间满足十进制规则,故称这种编码为“以二进制编码的十进制码”( binary coded decimal,BCD)
加法修正
无权码
表示一个十进制数位的二进制码的每一位没有确定的权。用得较多的是余3码(Excess-3 Code)和格雷码(Gray Code) ,格雷码又称“循环码"
余三码
余3码是在8421码的基础上,把每个编码都加上0011而形成的
理解:上面的比如说28,使用8421码表示之后,加上0011转成的码。之后观察相加的结果,低四位产生了进位,需要先将进位信号送入高位再本位加0011,高四位没有产生进位,应该从结果中减去0011
格雷码(运输过程中引起的误差较小)
格雷码的编码规则是:任何两个相邻编码只有1个二进制位不同,而其余3个二进制位相同。其优点是从一个编码变到下一个相邻编码时,只有1位发生变化,用它构成计数器时可得到更好的译码波形。
例如上面的0和7也只相差一位
16.原码反码补码
- 正数的原码,补码,反码都相同,都等于它本身
- 负数的补码是:符号位为1,其余各位求反,末位加1
反码是: 符号位为1,其余各位求反,但末位不加1,也就是说,反码末位加上1就是补码
-1011
- 原码:11011
- 反码:10100 // 负数时,反码为原码取反
- 补码:10101 // 负数时,补码为原码取反+1
- 移码:00101 // 原数+10000
17.判断溢出(运算结果超出机器数所能表示的范围)
两个异号数相加或者两个同号数相减(使结果变小),其结果是不会溢出的
双符号位
理解:加入双符号位运算的结果,最高位表示本应该得到的正负性,次位表示实际得到的正负,两者不相等发生溢出
18.浮点数
上面的4次方写成100
符表示正负
定点数中的纯小数:0.xxxxx 纯整数xxxxx.
19.移码 ![](https://i-blog.csdnimg.cn/blog_migrate/dd5b44944c5c5eff14bc7ea0cf0365d2.png)
20.二进制乘法运算
定点原码一位乘
定点补码一位乘法
21.定点除法运算的概念
定点除法运算有恢复余数法和加减交替法两种方法,在计算机中常用的是加减交替法,因为它的操作步骤少,而且也不复杂。
两个原码数相除,其商的符号为两数符号的异或值,数值则为两数绝对值相除后的结果
22.浮点数的加减法
浮点数的加减法的流程步骤 :
23.数据校验码
计算机系统中的数据在读写、存储和传送的过程中可能产生错误。数据校验码是一种常用的带有发现某些错误或自动改错能力的数据编码方法
实现原理是加进一些冗余码,使合法数据编码出现某些错误时,就成为非法编码。这样就可以通过检测编码的合法性来达到发现错误的目的。
这里用到一个码距的概念。码距是根据任意两个合法码之间至少有几个二进制位不相同而确定的,仅有一位不同,称其码距为1
奇偶校验码
关键点:
- 校验码是0表示通过,1表示不通过
- 校验码的位置一般放在高位
- 奇偶校验看的是1的个数是奇还是偶
- 数的是原编码
海明校验码
关键点:
- 待检验的数据位数是n
- 校验的位数也就是校验码的个数k
- n和k的关系满足n+k+1<=2的k次方
- 校验位的位置
- 加入了奇偶校验,默认是偶校验,通过用0表示
- 可以检测出两位的错误,纠正一位的错误
CRC循环冗余校验码
关键点:
- 信息码,也就是原码
- 生成的多项式(要么直接给出,要么根据二进制数)
- 校验位,根据多项式的最高次幂
- 多项式对应的二进制数
根据前面的系数定
- 余数,通过除法取模之后得到的数(异或运算),就是校验位数,根据校验位,少的话进行补0操作
24.主存储器
主存储器类型
- 随机存储器(RAM) :被称为易失性存储器,通过指令可以随机地、个别地对各个存储单元进行访问(读写)的存储器,一般访问所需时间基本固定,而与存储单元地址无关,但停电会造成信息丢失。在讨论计算机的主存时,如果没有特别说明,就是指随机存储器
在RAM中读取和写入信息既简单又快速,并且通过电信号完成
- 非易失性存储器 :停电仍能保持其内容
主存储器主要技术指标
主存容量
一个字的字长通常是8的倍数。有些计算机可以按“字节”寻址。以字节为单位来表示主存储器存储单元的总数﹐就是主存储器的容量
存储器存取时间
存储器访问时间,是指从启动一次存储器操作(读/写)到完成该操作所经历的时间
存储周期
连续启动两次独立的存储器操作(例如连续两次读操作)所需间隔的最小时间。通常存储周期略大于存取时间
主存储器的基本操作
25.随机存储器分为静态存储器和动态存储器
SRAM:优点是速度快,缺点是难以做大容量存储器,刷新功耗大,相同的容量体积较大,价格较高
DRAM:优点是可以做大容量存储器,缺点是没有DRAM速度快,且需要不断刷新
26.破坏,再生
读操作使电容原存储的电荷丢失,因此是破坏性读出
由于电容漏电阻的存在,随着时间的增加,其电荷会逐渐漏掉,从而使存储的信息丢失。为了保证存储的信息不遭破坏,必须在电荷漏掉前就进行充电,以恢复原来的电荷。这一充电过程称为再生,或称为刷新
27.DRAM 与 SRAM 的比较
- DRAM使用简单的单管单元作为存储单元,因此,每片存储容量较大,约是SRAM的4倍
- DRAM的价格比较便宜,大约只有SRAM的1/4
- DRAM所需功率大约只有SRAM的1/6
- 由于上述优点,DRAM作为计算机主存储器的主要元件得到了广泛的应用。
- DRAM的速度比SRAM要低。DRAM需要再生,不仅浪费了时间,还需要有配套的再生(刷新)电路。SRAM 一般用作容量不大的高速存储器。
28.非易失性半导体存储器
易失性存储器
前面介绍的 DRAM和SRAM均为可任意读写的随机存储器,当掉电时,所存储的内容立即消失,所以是易失性存储器。下面介绍的半导体存储器,即使停电,所存储的内容也不会丢失。根据半导体制造工艺的不同,可分为ROM,PROM,EPROM、EPROM和Flash Memory
EPROM
为了能多次修改ROM中的内容,产生了EPROM
其基本存储单元由一个管子组成,但与其他电路相比管子内多增加了一个浮置栅,编程序(写入)时,控制栅上接12V编程序电压Vpp,源极接地,漏极上加5V电压。漏源极间的电场作用使电子穿越沟道,在控制栅的高压吸引下,这些自由电子越过氧化层进入浮置栅;当浮置栅极获得足够多的自由电子后,漏源极间便形成导电沟道(接通状态),信息存储在周围都被氧化层绝缘的浮置栅上,即使电关闭,信息仍保存。
当 EPROM中的内容需要改写时,先将其全部内容擦除成全1,然后对需要存入0的存储单元改写为0。擦除是靠紫外线使浮置栅上的电荷泄漏而实现的。EPROM芯片封装上方有一个石英玻璃窗口,将器件从电路上取下,用紫外线照射这个窗口,可实现整体擦除。EPROM的编程次数不受限制。
29.位扩展
位扩展指的是用多个存储器芯片对字长进行扩充。其连接方式是将多片存储器的地址、片选CS、读写控制端R/W相应并联,数据端分别引出。图4.15是采用2个16K×4位芯片组成16KX8位的存储器,存储器字长8位。每个芯片字长4位,每片有14条地址线引出端和4条数据线引出端。
八片芯片一起工作,就组成八位
30.指令格式
了解指令格式
计算机的指令格式与机器的字长,存储器的容量,指令的功能有很大的关系(联系指令的格式 操作码:存储器 操作数)
指令组成
计算机是通过执行指令来处理各种数据的。为了指出数据的来源﹑操作结果的去向及所执行的操作,一条指令一般包含下列信息。
- 操作码。具体说明操作的性质及功能。一台计算机可能有几十条至几百条指令,每一条指令都有一个相应的操作码,计算机通过识别该操作码来完成不同操作。
- 操作数的地址。CPU通过该地址就可以取得所需的操作数。
- 操作结果的存储地址。把对操作数的处理所产生的结果保存在该地址中。
- 下一条指令的地址。当程序顺序执行时,下一条指令的地址由程序计数器(PC)给出,仅当改变程序的运行顺序(如转移、调用子程序)时,下一条指令的地址才由指令给出。
从上述分析可知,一条指令包括两种信息即操作码和地址码。操作码(operation code)表示该指令所要完成的操作(如加、减、乘、除﹑数据传送等),其长度取决于指令系统中的指令条数;地址码描述该指令的操作对象﹐或者直接给出操作数﹐或者指出操作数的存储器地址或寄存器地址。
根据地址码部分所给出地址的个数﹐指令格式可分为如下几种。
31.指令操作码编码格式
指令操作码的长度决定了指令系统中完成不同操作的指令条数。若某机器的操作码长度固定为K位,则他最多只能有2的k次方条不同的指令
指令操作码通常有两种编码格式
固定格式--即操作码的长度固定,且集中放在指令字的一个字段中。这种格式对于简化硬件设计,减少指令译码时间非常有利
可变格式--即操作码的长度可变,且分散地放在指令字的不同字段中。这种格式能够有效地压缩程序中操作码的平均长度,在字长较短的微型机上广泛采用。
32. 寻址方式
寻址方式(或编址方式)指的是确定本条指令的数据地址及下一条要执行的指令地址的方法,它与计算机硬件结构紧密相关,而且对指令格式和功能有很大影响
不同的计算机有不同的寻址方式,但其基本原理是相同的
分类
立即数寻址方式
寄存器寻址方式 -- 操作数在所指示的寄存器中
存储器寻址方式
1.直接寻址方式
2.间接寻址方式
3.寄存器相对寻址方式
4.基址加变址寻址方式
5.相对基址加变址寻址方式
33.指令类型及其功能
-
算术运算逻辑指令
-
移位操作指令
-
浮点运算指令
-
十进制运算指令
-
字符串处理指令
-
数据传送指令
-
转移指令
-
堆栈及堆栈操作指令
压入指令(PUSH),弹出指令(POP)
-
输入输出(I/O)指令
计算机所处理的一切原始数据和所执行的程序(除了固化在rom中的以外),均来自外部设备的输入,处理结果需通过外部设备输出
-
特权指令
-
其他指令
34.精简指令RISC(reduced)和复杂指令 CISC(complex)
CISC
复杂指令系统计算机
RISC
精简指令系统计算机
MIPS特点
MIPS架构20多年前由斯坦福大学开发,是一种简洁、优化、具有高度扩展性的RISC架构。它的基本特点是:包含大量的寄存器、指令数和字符、可视的管道延时时隙,这些特性使MIPS架构能够提供最高的每平方毫米性能和当今SoC设计中最低的能
35.机器语言、汇编语言和高级语言
36.中央处理器中的控制器
基本功能
1.取指令
2.分析指令
3.执行指令
4.控制程序和数据的输入和结果输出
5.对异常情况和某些请求的处理
37.微程序控制的基本概念
在计算机中,一条指令的功能是通过按一定次序执行一些列基本操作完成的,这些基本操作称为微操作
(如加法指令,分为4步:取指令、计算地址、取数、加法运算)每一步实现若干个微操作。
微指令
在微程序控制的计算机中,将由同时发出的控制信号所执行的一组为操作称为微指令(也称为微命令),所以微指令就是把同时发出控制信号的有关信息汇集起来而形成的。
微程序
计算机的程序由指令序列构成,而计算机每条指令的功能均由微指令序列解释完成,这些为指令序列的集合就叫做为程序。
控制存储器
为程序一般是存放在专用的存储器中的,由于该存储器主要存放控制信号(命令)与下一条执行的微指令地址(简称下址),所以被叫做控制存储器。
一般计算机指令系统是固定的,所以实现指令系统的微程序也是固定的,于是控制存储器可以用ROM(只读存储器)实现。
(又由于机器内控制信号数量比较多,再加上决定下址的地址码有一定宽度,所以控制存储器的字长比机器字长要长得多。)
38.微指令由控制位+下址组成
39.机器周期的确定
40.组合逻辑控制方式概念
41.流水线的基本思想
42.存储系统的层次结构
43.局部性原理
44.块
45.命中率,平均存取时间计算
46.虚拟存储器-段,页,段页
段式管理
把程序按内容或过程函数关系分成段,每段有自己的名字。一个用户作业或者进程所包含的段对应一个二维线性虚拟空间,也就是一个二维虚拟存储器。段式管理程序以段为单位分配内存,然后通过地址映射机构把段式虚拟地址转换为实际内存物理地址。
页式管理
将各进程的虚拟空间划分为若干个长度相等的页。把内存空间按页的大小划分为片或者页面,然后把页式虚拟地址与内存地址建立一一对应的页表,并用相应的硬件地址转换机构来解决离散地址变换问题。页式管理采用请求调页和预调页技术来实现内外存存储器的统一管理。
段页式管理
系统必须为每个作业或者进程建立一张段表以管理内存分配与释放、缺段处理等。另外由于一个段又被划分为若干个页,每个段必须建立一张页表以把段中的虚页变换为内存中的实际页面。显然与页式管理时相同,页表也要有相应的实现缺页中断处理和页面保护等功能的表项。
段页式管理是段式管理和页式管理相结合而成,具有两者的优点。
由于管理软件的增加,复杂性和开销也增加。另外需要的硬件以及占用的内存也有所增加,使得执行速度下降。
47.快表
快表是一种特殊的高速缓冲存储器(Cache),内容是页表中的一部分或全部内容。在操作系统中引入快表是为了加快地址映射速度
48.段页式虚拟存储器
49.输入输出系统包含什么、设备控制器的基本功能
由外围设备和输入输出控制系统两部分组成,是计算机系统的重要组成部分。外围设备包括输入设备、输出设备和磁盘存储器、磁带存储器、光盘存储器等。从某种意义上也可以把磁盘、磁带和光盘等设备看成一种输入输出设备,所以输入输出设备与外围设备这两个名词经常是通用的。在计算机系统中,通常把处理机和主存储器之外的部分称为输入输出系统,输入输出系统的特点是异步性、实时性和设备无关性。
50.输入输出接口类型
51.IO 数据传送控制方式
- 程序直接控制
程序直接控制方式就是完全通过程序来控制主机和外围设备之间的信息传送。通过的办法是在用户的程序中安排一段输入输出指令和其他指令所组成的程序直接控制外围设备工作。在程序中有两种方法实现程序控制。
- 程序中断传送方式
目前由于计算机都设置了中断系统,这使能CPU不能够响应外部设备的请求是处理软件,硬件故障等。但一些频率较高的外设,如磁盘,磁带等数据交换时间较短如果采取中断,造成数据丢失,一成批高频设备直接访问内存方式。
- 直接储存器存取方式
直接存储器存取方式的基本思想是在外围设备和主存之间开辟直接通道,由专门的DMA控制器来控制主存和外设的数据传送需要,没有CPU干涉,纯硬件实现,花费时间短,,所以占用总线一个工作周期,之后再由CPU控制总线。
但它也存在局限性:由于外围设备的管理和操作人需要由CPU承担,大型计算机中外围设备众多,数量大,主存与外存访问调度频繁,使得发生访问主存冲突,因此大型计算机中专门设有硬件安装通到。
- I/O通道控制方式
I/O设备具有自己的指令系统,并能实现指令所控制的操作,所以,I/O通道既具备处理功能,它仅能面向外围设备的控制和数据传送,其指令系统也简单,它属于CPU的专门外围设备管理器。
- 外围处理方式
输入输出处理机通常称为外围处理机,功能跟接近于一般处理机,能完成I/O控制任务(如:码转换,格式处理,数据块检测,纠错等)有了它可以简化外围设备控制,数据处理,维护诊断,升级,通信等。
有外围处理机方式基本独立于主机工作,所以系统中设置多个外围处理机,分别承担控制,维护,诊断,通信等任务,功能有集中式变到分布式使得计算机的系统结构有了质的飞跃。
52.中断作用
- CPU与I/0设备并行工作
- 硬件故障处理 计算机运行时,如硬件出现某些故障,机器中断系统自动发出中断请求,CPU 响应中断后自动进行处理
- 实现人机联系 在计算机工作过程中,如果用户要干预机器,可利用中断系统实现人机通信
- 实现多道程序和分时操作 多道程序的切换运行需借助于中断系统。也可以通过分配每道程序一个固定时间片利用时钟定时发中断进行程序切换
- 实现实时处理 在计算机控制系统中,当被控制设备的某些操作完成时,或出现压力过大、温度过高等情况时,必须及时处理。这些事件出现的时刻是随机的,而不是程序本身所能预见的,此时.要求计算机去执行中断服务程序。
- 实现应用程序和操作系统的联系 可以在用户程序中安排一条 Trap 指令进入操作系统,称之为“软中断”。其中断处理过程与其他中断类似
- 多处理机系统各处理机间的联系 在多处理机系统中,处理机和处理机之间的信息交流和任务切换可以通过中断来实现
53.中断相关概念
中断源
引起中断的事件,即发出中断请求的来源,称为中断源。
中断源的种类
- I/O设备、定时钟等来自处理机外部设备的中断,又叫外中断。
- 处理器硬件故障或程序“出错”引起的中断,又叫内中断。
- 由 Trap 指令产生的软中断,这是在程序中预先安排好的。而前面两种中断则是随机发生的。
中断触发器
当中断源发生引起中断的事件时,先将它记录在设备控制器的中断触发器中,即将中断触发器置1。当中断触发器为1时,向 CPU 发出“中断请求”信号。每个中断源有一个中断触发器。全机的多个中断触发器构成中断寄存器。其内容称为中断字或中断码。CPU进行中断处理时,根据中断字确定中断源,转入相应的服务程序
中断的分级与中断优先权
在设计中断系统时,要把全部中断源按中断性质和处理的轻重缓急进行排队并给予优先权。所谓优先权是指有多个中断同时发生时,对各个中断响应的优先次序。
当中断源数量很多时,中断字就会很长:同时也由于软件处理的方便,一般把所有中断按不同的类别分为若干级,称为中断级,在同一级中还可以有多个中断源。首先按中断级确定优先次序,然后在同一级内再确定各个中断源的优先权。
当对设备分配优先权时,必须考虑数据的传输率和服务程序的要求。如果来自某此设备的数据只是在一个短的时间内有效,为了保证数据的有效性,通常把最高的优先权分配给它们。较低的优先权分配给数据有效期较长的设备,或具有数据自动恢复能力的设备。
禁止中断和中断屏蔽
禁止中断
产生中断源后,由于某种条件的存在,CPU 不能中止现行程序的执行,称为禁止中断。一般在 CPU 内部设有一个“中断允许”触发器。只有该触发器为1状态时,才允许处理机响应中断;如果该触发器被清除,则不响应所有中断源申请的中断。前者叫做允许中断,后者叫做禁止中断。
“中断允许”触发器通过“开中断”或“关中断”指令来置位、复位。进入中断服务程序后自动“关中断”
中断屏蔽
当产生中断请求后,用程序方式有选择地封锁部分中断,而允许其余部分中断仍得到响应,称为中断屏蔽。
实现方法是为每个中断源设置一个中断屏蔽触发器来屏蔽该设备的中断请求。具体说,用程序方法将该触发器置 1,则对应的设备中断被封锁,若将其置 0,才允许该设备的中断请求得到响应。由各设备的中断屏蔽触发器组成中断屏蔽寄存器。
有些中断请求是不可屏蔽的,也就是说,不管中断系统是否打开中断,这些中断源的中断请求一旦提出,CPU 必须立即响应。例如电源掉电就是不可屏蔽中断。所以,中断又分为可屏蔽中断和非屏蔽中断。非屏蔽中断具有最高优先权。
一旦 CPU 响应中断的条件得到满足,CPU转入中断服务程序进行中断处理
54.中断处理过程
55.多重中断处理
如果CPU在执行某一中断服务程序过程中,又遇到了新的更高级的中断请求,CPU暂停原中断的处理,而转去处理新的中断,待处理完毕后,再返回继续处理原来的中断,这种中断称为多重中断,也称中断嵌套。
处理原则
若新的中断的优先级高于原中断的优先级,CPU响应新的中断;否则,CPU不予响应,必须待原中断处理完毕且返回主程序后,再响应新的中断
单重中断和多重中断比较
在中断响应部分(中断隐指令),两者基本没用区别
在中断服务阶段,多重中断需要在有新的中断请求时,比较优先级,如果请求者优先级低于正在执行者,则继续执行中断。如果高于,则需要中断当前的中断,这里需要保护现场的同时,需要保存屏蔽字
中断屏蔽字
中断屏蔽技术
中断屏蔽技术主要用于多重中断,CPU要具备多重中断的功能,须满足下列条件
- 在中断服务程序中提前设置开中断指令。
- 优先级别高的中断源有权中断优先级别低的中断源。
每个中断源都有一个屏蔽触发器,1表示屏蔽该中断源的请求,0表示可以正常申请,所有屏蔽触发器组合在一起,便构成一个屏蔽字寄存器,屏蔽字寄存器的内容称为屏蔽字。
屏蔽字设置规律
- 一般用‘1’表示屏蔽,'0’表示正常申请。
- 每个中断源对应一个屏蔽字(在处理该中断源的中断服务程序时,屏蔽寄存器中的内容为该中断源对应的屏蔽字)。
- 屏蔽字中1’越多,优先级越高。每个屏蔽字中至少有一个’1’(至少要能屏蔽自身的中断)