计算机组成原理期末考点总结 第一部分 数据的编码表示 考点一:原码、补码的表示,表示范围 1.1原码、反码、补码的表示 原码就是真值加符号位。 原码变反码:正数不变;负数的符号位不变,其他位取反。 原码变补码:正数不变;负数的符号位不变,其他位取反再加一。或者从右往左第一个1以及右边的0不变,其左边的各位取反,符号位不变。 1.2原码、反码、补码的特殊情况 原码的0有两种,[+0]原=00000,[-0]原=10000(以5位为例) 反码的0也有两种,[+0]反=00000,[-0]反=11111(以5位为例) 补码的0只有一种,[+0]补=[-0]补=00000,其中10000用来表示最负数
,如果是定点小数,则1.0000表示
1.3原码、反码、补码的表示范围 n位无符号数的表示范围
。注:11…111(n位)无符号数的真值即为
,0.111…111(n个1)的真值为
n位(包含符号位)原码定点整数的表示范围
n位(包含符号位)原码定点小数的表示范围
n位(包含符号位)补码定点整数的表示范围
n位(包含符号位)补码定点小数的表示范围
考点二:规格化浮点数的表示范围与精度取决于什么? 2.1浮点数的表示 浮点数
,其中阶码E的数值位(不包括符号位)为k位,尾数M的数值位(不包括符号位)为n位 2.2浮点数的表示范围和精度 浮点数的表示范围主要由阶码的位数来决定。其中阶码越大(越接近最大正数),则浮点数的绝对值越大;阶码越小(越接近最大负数),则浮点数的绝对值越小。 浮点数的精度主要由尾数的位数来决定。其中尾数的符号决定整个浮点数的符号。 考点三:判断浮点数尾数是否为规格化数的方法 规格化浮点数的尾数M的绝对值应该在
内(基数为2)。在尾数用原码表示时,规格化浮点数的尾数的最高数位总等于1。在尾数用补码表示时,规格化浮点数的尾数最高数位应与符号位不同。 考点四:计算:已知浮点数格式,规格化浮点数的表示,真值与编码间的转换 例题:
则阶码的移码为,真值为0001100,即为12 则有
考点五:IEEE754单精度浮点格式 格式: 1位数符;8位阶码(用移码表示,偏置值为127());23位尾数数值位(用原码表示,由于是规格化,因此其实是24位,隐含最高位为1) 例题:将
转换为IEEE短浮点数。
符号位:1 阶码:127-1=126=
尾数:000000000000 所以IEEE短浮点数为1;0;00000000000 例题:将IEEE短浮点数 00000000 00000000转换为十进制数。 符号位:1 阶码:
尾数:000000000000 因为129-127=2 则真值为
因为符号位为1,则真值为-7.5 第二部分 指令系统 考点六:指令格式 6.1指令的基本格式 指令=操作码+地址码 操作码说明指令的操作性质、功能,地址码说明操作数的地址 6.2地址码 (1)四地址 OP A1 A2 A3 A4 (A1)OP(A2)->A3 A4=下一条指令 (2)三地址 OP A1 A2 A3 (A1)OP(A2)->A3 (PC)+1->(PC)(隐含使用PC存放指令地址) (3)二地址 OP A1 A2 (A1)OP(A2)->A1 (PC)+1->(PC)(隐含使用PC存放指令地址) (4)一地址 OP A1 (Acc)OP(A1)->(Acc)(使用累加寄存器) (PC)+1->(PC)(隐含使用PC存放指令地址) (5)零地址 OP 常用在堆栈计算机中 6.3操作码 规整型(定长编码):操作码字段的位数和位置是固定的 非规整型(变长编码):操作码字段的位数不固定、分散分布在指令字的不同位置上 拓展操作码:使用1111、、1等作为拓展窗口,进行拓展 考点七:掌握各种常见的寻址方式:是否需要访存;已知形式地址,如何计算(或)操作数的有效地址, 并读取操作数 编址方式:字编址(编址单位与访问单位一致)、字节编址(编址单位是一个字节)、位编址(编址单位是一位) 常见寻址方式: (1)立即寻址:OP 立即数 指令内的地址码部分就是操作数本身(不是地址),这个数被称为立即数。取指令时,不必再次访存 (2)寄存器寻址:OP Ri 指令内的地址码部分给出了某个寄存器的编号,操作数在寄存器内,S=(Ri),无需再次访存 (3)直接寻址:OP 直接地址 指令内的地址码部分给出了操作数在内存中的有效地址,形式地址等于有效地址,S=(A),需要访存寻找操作数 (4)间接寻址:OP @ 间接地址 指令内的地址码部分给出了操作数地址的地址,或者地址的地址的地址……,S=((A))(一级间接寻址),需要多次访存。@为标志位,@=1,则地址段仍为间接地址,@=0,则地址段为有效地址,根据这个地址可以找到操作数。 (5)寄存器间接寻址:OP Ri 指令内的地址码部分给出了某一通用寄存器的编号,其中存储着操作数的有效地址,S=((Ri)),只需一次访存 (6)变址寻址:OP Rx A 指令内的地址码部分给出了变址寄存器的编号Rx和形式地址A,有效地址等于变址寄存器的内容与形式地址A相加,操作数S=((Rx)+A),只需一次访存。一般变址寄存器的值是可变的,给出的形式地址是固定的。 (7)基址寻址:OP Rb D 指令内的地址码部分给出了基址寄存器的编号Rb和位移量D,有效地址等于基址寄存器的内容与位移量D相加,操作数S=((Rb)+D),只需一次访存。一般基址寄存器的值是固定的,给出的位移量是可变的。 (8)相对寻址:OP D 是基址寻址的一种变通,由PC提供基址地址,D仍然是位移量,有效地址等于PC的内容(指令地址)与位移量D相加,操作数S=((PC)+D),只需一次访存。 (9)页面寻址: 页面地址:每页的编号;页内地址:一页内的地址 指令的地址码字段给出页内地址A(称为形式地址) 有效地址EA=0//A(基页寻址)或EA=(PC)H//A(当前页寻址)或EA=(R)//A(页寄存器寻址) 考点八:相对寻址支持程序浮动 操作数的地址不是固定的,它随着PC值的变化而变化,且与指令地址之间总是相差一个固定的值,当指令地址变换时,由于其位移量不变,使得操作数与指令在可用的存储器内一起移动,所以仍能保证程序的正确执行。采用PC相对寻址方式编写的程序可以在主存中任意浮动,它放在主存的任何地方,所执行的效果都是一样的。 考点九:堆栈寻址,专用寄存器SP 硬堆栈:使用寄存器组来实现栈的压入和弹出 软堆栈: 从高地址向低地址方向生成。 以自底向上堆栈为例。 进栈: (SP)-1->SP 栈指针减1 (A)->(SP) 将数据放入栈指针指向的栈顶单中 出栈: ((SP))->A 栈顶单的内容弹出到A中 (SP)+1->SP 栈指针加1 A为寄存器或主存单地址,SP为栈指针,(SP)为栈指针的内容,即栈顶单的地址,((SP))为栈顶单的内容。 第三部分 运算器 考点十:四位先行(快速)进位链的逻辑表达式 全加器的逻辑表达式:
(Ci-1是上一位的进位)
进位产生函数
进位传递函数
则
于是,4位先行进位链:
考点十一:计算机中采用补码运算的目的 补码运算化减为加,简化运算,简化运算器的设计 补码加法:两个补码相加,符号位参与运算,两数和的补码等于两数的补码和
补码减法:两个补码相减,先对减数求变补,然后改为补码加法
求变补的过程:将
的所有位求反(包含符号位),然后末尾加1,即得到
考点十二:定点补码的溢出判断 (1)使用一个符号位判断 两个正数相加的结果为负数,即发生了正溢(
) 两个负数相加的结果为正数,即发生了负溢(
) (2)使用进位判断 两个正数相加,结果的最高有效位产生进位(
),但符号位不进位(
),则发生了正溢。 两个负数相加,结果的最高有效位不进位(
),但符号位产生进位(
),则发生了负溢。 (3)采用双符号位补码判断: 补码有两个符号位,最左边的那个叫做真符,两个符号位均作为数的一部分参与运算
结果为正数,不产生溢出
结果正溢
结果负溢
结果为负数,不产生溢出 考点十三:PSW寄存器中,常见的标志位?由谁来置位? PSW是程序状态字,存放在状态标志寄存器中。其中包含状态标志、控制标志等两种。 6个状态标志为: 进位标志位、辅助进位标志位、溢出标志位、零标志位、符号标志位、校验标志位 3个控制标志为: 方向标志、中断允许标志位、陷阱标志位 由计算的结果来置位 考点十四:原码一位乘法的逻辑电路框图。组成部件、乘法过程
如图所示,A为部分积寄存器,初始为0,C为乘数寄存器,B为被乘数寄存器。每次运算(共需计算n次(n是位数)),A与C都会一起右移(A与C是连起来的)。根据C的最后一位,来控制下边的B是否加进去。右下角的异或门来输出符号位,CR是计数器,用来控制计算次数。 原码一位乘法运算需要3个寄存器,n+2位的加法器,n+2个与门,一个计数器,一个异或门 乘法过程略。 第四部分 控制器 考点十五:冯.诺依曼思想的核心 存储程序和指令驱动的顺序执行 考点十六:CPU的四个主要功能 (1)指令控制:从内存中读取一条指令、产生下一条指令的地址(控制器) (2)操作控制:对指令进行译码,产生各种控制信号,并送往相应部件,控制完成指令所要求的动作(控制器) (3)时序控制:对各种控制信号实施时间上的控制,正确的时序产生操作控制信号,保证计算机有条不紊的工作(控制器) (4)数据加工:执行所有的算术运算和逻辑运算(运算器) 考点十七:如何区分存储单中存放的是指令还是数据 控制器用来区分存储单中存放的是指令还是数据 考点十八:CPU中的常用寄存器,名称和作用,是否对(机器语言/汇编语言)程序员可见 通用寄存器:包含大量的可编址寄存器,用来存放原始数据和运算结果。累加寄存器Acc属于通用寄存器,用来暂时存放ALU运算的结果信息。 专用寄存器:专门用来完成某一种特殊功能的寄存器。包含: 程序计数器(PC):用来存放正在执行的指令地址或接着要执行的下一条指令地址(用户可见) 指令寄存器(IR):存放从存储器中取出的指令(用户不可见) 存储器数据寄存器(MDR):暂时存放由主存储器读出或即将写入主存的一条指令或一个数据字(用户不可见) 存储器地址寄存器(MAR):保存当前CPU所访问的主存单的地址,起暂存、缓冲作用(用户不可见) 状态标志寄存器(PSW):见考点十三(用户可见) 考点十九:指令周期 指令周期是指从取指令、分析取数到执行完该指令所需的全部时间。 机器周期又称CPU周期,通常把一个指令周期分为若干个机器周期,每个机器周期完成一个基本操作。一般的CPU周期有取指周期、取数周期、执行周期、中断周期,取指和执行是必须的。 指令周期 = i × 机器周期 考点二十:数据通路的组成 略 考点二十一:单总线数据通路中, 指令的读取与执行过程。用作主存接口的寄存器 1、取指令阶段:将现行指令从主存中取出来,并送到指定寄存器中。 (1)传送当前指令的地址:将程序计数器(PC)中的地址送至存储器地址寄存器(MAR)、地址总线(AB)中 (2)发送读信号:由控制单(CU)经过控制总线(CB)向存储器发读命令 (3)读取指令:从主存中读取指令,经数据总线(DB),传送到存储器数据寄存器(MDR)中 (4)指令送到IR中:将存储器数据寄存器(MDR)中的内容送到指令寄存器(IR)中 (5)PC自增:PC内容递增,为取下一条指令做准备 2、分析取数阶段 指令进入到指令译码器(ID)中,进行译码,并识别出当前指令的类型,然后根据指令的类型,判断当前指令是无操作数指令、单操作数指令,还是双操作数指令。根据取数类型的不同,从主存或寄存器中取数据,然后进入到执行阶段。 3、执行阶段 按照指令的规定完成各种操作,形成稳定的运算结果,并将其存储起来。 用作主存接口的寄存器有MAR、MDR等 考点二十二:转移指令的读取与执行。执行结果 转移指令为JC A (1)取指周期 (PC)->MAR(将指令地址存放在MAR中) read(CU向主存发出读取命令) Mem(MAR)->MDR(从主存中相应地址处取指令,存放到MDR内) (MDR)->IR(把指令送入IR内) (2)执行周期 以下三条只有有进位(C=1)时,才会执行,否则不执行 (PC)->Y(C=1)(把PC地址暂存于Y中) Ad(IR)+(Y)->Z(C=1)(CU给ALU传递信号,使IR中指令的A字段与Y相加,结果存到Z中) (Z)->PC(C=1)(将转移指令的结果存回到PC中) 转移指令的执行结果:(PC)+A->PC(给PC加上了一个指令中提供的位移值A) 考点二十三:大题:已知数据通路图,给出某指令的指令周期流程图 如图所示,按图分析:
考点二十四:流水线技术 流水线方式并不能缩短一条指令的执行时间,但是可以加快相邻多条指令的执行速度,换言之提高了指令的吞吐率。 流水段个数:最复杂指令的功能段个数。 流水段长度:最复杂功能段的操作所用的时间 计算时钟周期的长度=最复杂功能段时间+寄存器时间 指令周期=ix时钟周期 第五部分 存储器 考点二十五:层次化存储体系 为了平衡存储容量、价格之间的矛盾,由多级存储器构成层次化的存储系统,主要有三级:主存、Cache、辅存 考点二十六:存取速度、存取时间 存取时间是指主存从启动一次存储器操作到完成该操作所经历的时间。存取周期是指主存进行一次完整的读写操作所需的全部时间,即两次访问存储器操作之间所需要的最短时间,一般存取周期大于存取时间,这是因为读写操作后,总要有一段时间用来恢复存储器内部状态。
2024最新激活全家桶教程,稳定运行到2099年,请移步至置顶文章:https://sigusoft.com/99576.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。 文章由激活谷谷主-小谷整理,转载请注明出处:https://sigusoft.com/84770.html