当前位置:文档之家› (完整版)计算机组成原理知识点总结

(完整版)计算机组成原理知识点总结

第2章数据的表示和运算主要内容:(一)数据信息的表示1.数据的表示2.真值和机器数(二)定点数的表示和运算1.定点数的表示:无符号数的表示;有符号数的表示。

2.定点数的运算:定点数的位移运算;原码定点数的加/减运算;补码定点数的加/减运算;定点数的乘/除运算;溢出概念和判别方法。

(三)浮点数的表示和运算1.浮点数的表示:浮点数的表示范围;IEEE754标准2.浮点数的加/减运算(四)算术逻辑单元ALU1.串行加法器和并行加法器2.算术逻辑单元ALU的功能和机构2.3 浮点数的表示和运算2.3.1 浮点数的表示(1)浮点数的表示范围•浮点数是指小数点位置可浮动的数据,通常以下式表示:N=M·RE其中,N为浮点数,M为尾数,E为阶码,R称为“阶的基数(底)”,而且R为一常数,一般为2、8或16。

在一台计算机中,所有数据的R都是相同的,于是不需要在每个数据中表示出来。

浮点数的机内表示浮点数真值:N=M ×2E浮点数的一般机器格式:数符阶符阶码值 . 尾数值1位1位n位m位•Ms是尾数的符号位,设置在最高位上。

•E为阶码,有n+1位,一般为整数,其中有一位符号位EJ,设置在E的最高位上,用来表示正阶或负阶。

•M为尾数,有m位,为一个定点小数。

Ms=0,表示正号,Ms=1,表示负。

•为了保证数据精度,尾数通常用规格化形式表示:当R=2,且尾数值不为0时,其绝对值大于或等于0.5。

对非规格化浮点数,通过将尾数左移或右移,并修改阶码值使之满足规格化要求。

浮点数的机内表示阶码通常为定点整数,补码或移码表示。

其位数决定数值范围。

阶符表示数的大小。

尾数通常为定点小数,原码或补码表示。

其位数决定数的精度。

数符表示数的正负。

浮点数的规格化字长固定的情况下提高表示精度的措施:•增加尾数位数(但数值范围减小)•采用浮点规格化形式尾数规格化:1/2≤M <1 最高有效位绝对值为1浮点数规格化方法:调整阶码使尾数满足下列关系:•尾数为原码表示时,无论正负应满足1/2 ≤M <1即:小数点后的第一位数一定要为1。

正数的尾数应为0.1x (x)负数的尾数应为1.1x (x)•尾数用补码表示时,小数最高位应与数符符号位相反。

正数应满足1/2 ≤M<1,即0.1x (x)负数应满足-1/2 >M≥-1,即1.0x (x)浮点数的溢出判断——根据规格化后的阶码判断•上溢——浮点数阶码大于机器最大阶码—中断•下溢——浮点数阶码小于机器最小阶码—零处理。

(2)IEEE754标准根据IEEE 754国际标准,常用的浮点数有两种格式:➢单精度浮点数(32位),阶码8位,尾数24位(内含1位符号位)。

➢双精度浮点数(64位),阶码11位,尾数53位(内含1位符号位)。

•由于IEEE754标准约定在小数点左部有一位隐含位,从而实际使得尾数的有效值变为1.M 。

例如,最小为x1.0…0,最大为x1.1…1。

规格化表示,故小数点左边的位恒为1,可省去。

•阶码部分采用移码表示,移码值127,1~254 经移码为-126 ~ +127。

•格式:(-1)S ×2E×(M0.M-1……M-(P-1))•最高是数符S,占1位,0表示正、1表示负。

•指数项E,基数是2,是一个带有一定偏移量的无符号整数。

•尾数部分M,是一个带有一位整数位的二进制小数真值形式(原码)。

其规格化形式应调整阶码使其尾数整数位M0为1且与小数点一起隐含掉。

微机中三种不同类型浮点数的格式单精度浮点数最大表示范围:(-(1.1111...1)2×2+127 ~(1.1111...1)2×2+127)——±1038接近于0的最小值:单精度浮点数可以表示((1.00...01)2×2-126)——10-38的数据而不损失精度。

微机中浮点数的三种表示形式单精度31 30 23 22 0双精度63 62 52 51扩展精度79 78 64 63 02.3.2 浮点数的加/减运算两数首先均为规格化数,进行规格化浮点数的加减运算需经过5步完成:(1)对阶操作:小阶向大阶对齐,使阶码相等。

(2)尾数运算:阶码对齐后直接对尾数运算。

(3)结果规格化:对运算结果进行规格化处理(使补码尾数的最高位和尾数符号相反)。

如溢出则需右规;如不是规格化时应左规。

(4)舍入操作:丢失位进行0舍1入或恒置1处理。

(5)判断溢出:判断阶码是否溢出,下溢则将运算结果置0(机器0),上溢则中断。

对阶运算(小阶向大阶对齐)尾数为原码时,尾数右移,符号位不动,最高位补0尾数为补码时,尾数右移,符号也移位,最高位补符号位。

(1) 求阶差(2) 对阶原则4. 算术逻辑单元ALU4.1 串行加法器和并行加法器 1)一位全加器全加器(FA)是最基本的加法单元,有加数Ai 、加数Bi 与低位的进位Ci-1三个输入,有Si 与进位Ci 共二个输出。

和表达式: Si =Ai ⊕Bi ⊕Ci-1进位表达式 :Ci=AiBi+BiCi-1+AiCi-1=AiBi+(Ai ⊕Bi )Ci-1 全加器的硬件逻辑如下图所示。

2)串行加法器(行波进位)多位二进制数据的加法可用多个全加器来完成,串行进位(又称行波进位)加法E x =E y 已对齐E x > E y E x <E yy 向 x 看齐x 向 y 看齐M y 1,M x 1,= 0 > 0< 0 E y +1E x +1ΔE = E x – E y =器,逻辑电路比较简单,但是最高位的加法运算,一定要等到所有低位的加法完成之后才能进行,低位的进位要逐步的传递到高位,逐级产生进位,因此运算速度比较慢。

3)并行进位全加器(先行进位)只有改变进位逐位传送的路径,才能提高加法器工作速度。

解决办法采用“超前进位产生电路”来同时形成各位进位,这种加法器为超前进位加法器。

根据各位进位的形成条件,本级Ci的逻辑表达式:C1=A1B1+(A1+B1)C0=G1+P1C0 其中:Gi=Ai·Bi 称为进位产生函数(绝对进位)Pi=Ai+Bi 称为进位传递函数(条件进位)Gi的意义是:当AiBi均为“1”时定会产生向高位的进位Pi的意义是:当Ai和Bi中有一个为“1”时,若同时低位有进位输入,则本位也将向高位传送进位。

写成通用式为:C1=G1+P1C0 (低位)C2=G2+P2C1= G2+P2(G1+P1C0)= G2+P2G1+P2P1C0C3=G3+P3 G2+ P3 P2G1+ P3 P2P1C0C4=G4+P4G3+ P4P3G2+ P4P3P2G1+ P4P3P2P1C0并行进位加法器的运算速度很快,形成最高进位输出的延迟时间很短,但是以增加硬件逻辑线路为代价。

⏹ 对于长字长的加法器,往往将加法器分成若干组,在组内采用并行进位,组间则采用串行进位或并行进位,由此形成多种进位结构。

☐ 单级先行进位:单级先行进位方式将n 位字长分为若干组,每组内采用并行进位方式,组与组之间则采用串行进位方式。

☐ 多级先行进位 :多级先行进位在组内和组间都采用先行进位方式。

(1)单级分组先行进位链n 位全加器分若干小组,组内的进位同时产生,组与组之间采用串行进位 以 n = 16 为例当 Gi Pi 形成后经2.5 ty 产生 C 3 ~ C 0 5 ty 产生 C 7 ~ C 4 7.5 ty 产生 C 11 ~ C 8 1 0 ty 产生 C 15 ~ C 12(2)二级分组先行进位链n 位全加器分若干大组,大组中又包含若干小组。

每个大组中小组的最高位进C 15 C 14 C 13 C 12C 11 C 10 C 9 C 8C 7 C 6 C 5 C 4C 3 C 2 C 1 C 0 15 14 13 1211 10 9 87 6 5 43 2 1 0C -1位同时产生。

大组与大组之间采用串行进位。

以n = 32 为例C31 C27 C23 C19 C15 C11 C7 C3n =32 二级分组先行进位链i i i i i i i i i i i i i i i i当Gi Pi形成后经2.5 ty 产生C2、C1、C0、G1 ~ G8、P1 ~ P85 ty 产生C15、C11、C7、C37.5t y 产生C18 ~C16、C14~C12、C10~C8 、C6~C4 、C31、C27、C23、C191 0 ty 产生C30~C28、C26 ~C24、C22 ~C204.2 多功能算术/逻辑运算单元74181⏹ALU 74181 -- 进行多种算术运算和逻辑运算⏹基本逻辑结构是超前进位加法器A0~A3,B0~B3 操作数输入M: 状态控制端Cn : 最低位进位输入S0~S3 :运算选择控制端F3~F0 : 运算结果SN74181正逻辑功能16位快速ALU用74181和74182芯片构成的16位快速ALU。

74181电路:4位超前进位ALU芯片74182电路:超前进位扩展器芯片用三个16位全先行进位部件(74182)和八个74181可级连组成的32位ALU电路。

用五个16位全先行进位部件(74182)和十六个74181可级连组成的64位ALU电路由于集成器件的集成度的提高,允许更多位的ALU集成在一个芯片内。

例如AMD公司的AM29332为32位ALU,而在Intel公司的Pentium处理器中,32位ALU仅是芯片内的一部分电路。

尽管器件不同,但基本电路原理还是相似的。

相关主题