最新计算机组成原理第5讲定点除法

合集下载

计算机组成原理-第5讲(第2章)

计算机组成原理-第5讲(第2章)

计算机组成原理
课堂练习
计 算 机 学 院
用加减交替法补码一位除实现, X=0.1010,Y=-0.1101的X/Y,求出商。
15
计算机组成原理
本节作业
计 算 机 学 院
P291-6.21(1)
16
5
计算机组成原理
(2)加减交替法 (2)加减交替法
计 算 机 学 院
加减交替法是对恢复余数法的一种修正。当某一次求得 的插值(余数Ri)为负时,不是恢复它,而是继续求下 一位商,但用加上除数(+Y)的办法来取代(-Y)操作, 其它操作依然不变。 证明如下: 在恢复余数除法中,若第i-1次求商的余数为Ri-1,下一 次求商的余数为Ri,则:Ri=Ri-1-Y。 如果Ri<0,商的第i位上0,并执行操作:恢复余数 (+Y),将余数左移一位,再减Y,得Ri+1。其过程可用 公式表示如下: Ri+1=2(Ri+Y)-Y=2Ri+2Y-Y=2Ri+Y
6
计算机组成原理
加减交替法的规则
计 算 机 学 院
当余数为正时,商上1,求下一次商的办法,是 余数左移一位,再减去除数; 当余数为负时,商上0,求下一次商的办法,是 余数左移一位,再加上除数; 所以又叫不恢复余数法。若最后一次上商0,而 又需得到正确余数,则在这最后一次仍需恢复余 数。
7
举例:X=0.1011,Y=0.1101,用加减交替法求 用加减交替法求X/Y? 举例 用加减交替法求 解:[-Y]补=11.0011 补
9
计算机组成原理
课堂练习
计 算 机 学 院
用加减交替法原码一位除实现, X=0.1010,Y=-0.1101的X/Y,求出商及余 数。

5第五讲定点除法器

5第五讲定点除法器

20
2 不恢复余数阵列除法器
21
二 定点运算器的组成

1. 2.
3.
4. 5.
基本构成 算术逻辑运算单元 数据缓冲寄存器 通用寄存器 多路寄存器 数据总线
22
1 逻辑运算




逻辑非运算 eg1: x=011001,求逻辑非 逻辑加运算 eg2: x=011001,y=110101,求逻辑加 逻辑乘运算 eg3: x=011001,y=110101,求逻辑乘 逻辑异或运算 eg4: x=011001,y=110101,求逻辑异或
X0X1X2X3Cn Cn+4=G+P Cn
28
74181ALU电路逻辑图
29
74181ALU相关讨论
1.
当M=0时,M对进位信号没有任何影
响。因此M=0时,进行算术操作。
2.
当M=1时,封锁了各位的进位输出,即
C =0,因此各位的运算结果F 仅与Y 和 X 有关,故M=1时,进行逻辑操作。
30
则第n+1步恢复余数,不移位。
16
二 并行除法器

与阵列乘法器相似,阵列除法器也是一种
并行运算部件。

阵列除法器有多种形式,如不恢复余数阵
列除法器、补码阵列除法器等等。
17
1 可控加法/减法(CAS)单元
Si=Ai⊕(Bi⊕P)⊕Ci Ci+1=(Ai+Ci)· (Bi⊕P)+AiCi
18
原码除法实例
11
2 原码不恢复余数法(加减交替法)
算法分析
第二步:2r1-B=r2’<0
第二步:2r1-B=r2’<0 第三步:r2’+B=r2(恢复余数) 第三步:2r2’+B=r3 (不恢复余数) 第四步:2r2-B=r3 2r2-B=2(r2’+B)-B =2r2’+B=r3

最新 《计算机组成原理》之定点运算器的课件设计与开发-精品

最新 《计算机组成原理》之定点运算器的课件设计与开发-精品

摘要:《组成原理》之定点运算器的课件设计与开发利用Flash的强大功能,它集成了文字、图像、声音、动画、视频等多媒体信息,能更好的实现多媒体教学,使学习者加深对所学知识的理解,提高学生学习兴趣和教学效率,同时也能为课件增加生动的效果。

《计算机组成原理》之定点运算器的课件共设计和开发了6个模块:“数据与文字的表示方法”、“定点加减运算”、“定点乘法运算”、“定点除法运算与阵列除法器”、“定点运算器的组成”、“浮点运算方法和浮点运算器”。

关键词:计算机组成原理;定点运算器;Flash;Photoshop 中图分类号:TP393文献标识码:A文章编号:1009-3044(2011)28-6988-02 The Courseware Design and Development for the Fixed-point Arithmetic in the Principle of Computer Organization CHEN Si-si, WANG Feng (College of Physics and Electronic Information Engineering, Wenzhou University, Wenzhou 325035, China) Abstract: The courseware design and development for the fixed-point arithmetic in the Principles of Computer Composition includes six modules: "the representation of data and text", "fixed-point addition and subtraction", "the multiplication of fix-point", "the divide of fix-point and the array of the division", "the composition of the fix-point arithmetic", "the methods of the floating point and the floating arithmetic". Key words: multimedia; constitution principle of computer; fix-point arithmetic; flash 目前,《计算机组成原理》之定点运算器[1-2]的课件仅限于用Powerpoint制作,用这种技术做的PPT很枯燥不能调动学生学习的兴趣,而用Flash制作课件可以生动形象的描述各种教学问题,有效激发学生的学习兴趣,增加教学效果,提高教学效率,具有传统教学所不能比拟的优越性。

定点运算

定点运算

一、移位运算二、加法与减法运算三、软件技术的兴起和发展四、除法运算第三节定点数运算定点数运算包括移位、加、减、乘、除几种。

一、移位运算1.移位的意义移位运算在日常生活中常见。

例如15米可写作1500厘米,单就数字而言,1500相当于小数点左移了两位,并在小数点前面添了两个0;同样15也相当于1500相对于小数点右移了两位,并删去了小数点后面的两个0。

可见,当某个十进制数相对于小数点左移n位时,相当于该数乘以10n;右移n位时,相当于该数除以10n。

计算机中小数点的位置是事先约定的,因此,二进制表示的机器数在相对于小数点作n 位左移或右移时,其实质就便该数乘以或除以2n(n=1,2...n)。

移位运算又叫移位操作,对计算机来说,有很大的实用价值,例如,当计算机没有乘(除)运算线路时,可以采用移位和加法相结合,实现乘(除)运算。

计算机中机器数的字长往往是固定的,当机器数左移n位或右移n位时,必然会使其n 位低位或n位高位出现空位。

那么,对空出的空位应该添补0还是1呢?这与机器数采用有符号数还是无符号数有关,对有符号的移位叫算术移位。

2.算术移位规则对于正数,由于[x]原=[x]补=[x]反=真值,故移位后出现的空位均以0添之。

对于负数,由于原码、补码和反码的表示形式不同,故当机器数移位时,对其空位的添补规则也不同。

下表列出了三种不同码制的机器数(整数或小数均可),分别对应正数或负数,移位后的添补规则。

必须注意的是:不论是正数还是负数,移位后其符号位均不变,这是算术移位的重要特点。

不同码制机器数移位后的空位添补规则码制添补代码正数原码、补码、反码0原码0负数补码左移添0右移添1反码 1由上表可得出如下结论:(1)机器数为正时,不论左移或右移,添补代码均为0。

(2)由于负数的原码其数值部分与真值相同,故在移位时只要使符号位不变,其空位均添0。

(3)由于负数的反码其各位除符号位外与负数的原码正好相反,故移位后所添的代码应与原码相反,即全部添1。

计算机组成原理 位运算进行除法

计算机组成原理 位运算进行除法

计算机组成原理位运算进行除法
在计算机中,位运算进行除法通常会使用移位操作和位掩码操作来实现。

以下是一种基于二进制的除法实现:
1. 将被除数和除数转换为二进制数。

2. 确定最高位为1的位数,即被除数和除数的位数之差。

3. 将除数左移这个位数,一位一位地减去被除数,如果减法结果为负数,则将被除数和结果重新进行减法。

4. 重复上一步,直到结果为0或减法结果为负数时停止。

5. 如果最终结果大于除数,则需要减去除数,得到最终的余数。

例如,假设要计算12除以3的商和余数,转换为二进制后得到1100和0011。

最高位为1的位数为2,因此将除数左移2位,得到1100,减去被除数1100,得到0000,商为3。

由于结果等于除数,因此余数为0。

计算机组成原理 第五课

计算机组成原理 第五课
是 — —说明无错或无奇数位出错 否 — —奇数位出错
例:X0X1X2X3C =10110 (奇) X0'X1'X2'X3' C' =11110 由X0'X1'X2'X3'生成C*=
(1 ⊕ 1) ⊕ (1 ⊕ 1)
=1,则
C*⊕C' =1⊕0=1 —— 出错
(4) 优缺点
优点:简单易行,省器件. 缺点:只能发现奇数位错,无纠错能力.
2.1.4 数据校验码
1. 数据校验码:
用以发现或同时能得出错误位置特征的数据编码. 计算机中的错误类型: ; (1)固定性错误---元器件故障; ) (2)突发性错误---噪声干扰. )
2. 检错码--奇偶校验码 (1) 定义
使包括一位校验位在内的数据代码,"1"的个数总是奇 (或偶)数个为合法数据的编码.
2. 补码定点减法
(1)补码减法的规则: 推论: [X-Y]补= [X+(-Y)]补 =[X]补+[-Y]补 已知 [Y]补 ,那么 [-Y]补=? (2)求补: 由[Y]补求[-Y]补,称为对Y求补. (3)求补规则 : 不管真值Y时正数还是负数,求补的方法都是将[Y]补 可见:求补时,从[Y]补的最低位开始向高位扫描,见到第 连同符号位在内各位变反, 末位加1. 一个"1",包括这个"1"的各位不变,其余各位变反 例如:[y]补=1.1010,则环冗余校验码(CRC) CRC
n位数据位和r位校验位只有1位出错,共有n+r种情况, (1) 纠正一位错所需的校验码位数r 加上没有错的一种情况,共有n+r+1种情况,而r位二进 设待编码的信息有效位数为n,则r应满足: 制的编码数为2r,因此 2r≥n+r+1 即 r>log2n n r 1 2 2~4 3 5~11 12~26 4 5

计算机组成原理课件第五章定点运算器

计算机组成原理课件第五章定点运算器

解:
101110110001z

x∧y = 10110001
4
4、逻辑异或运算
对两数进行异就是按位求它们的模2加,所以逻辑异又称“按位加”,常
用记号“⊕”表示。
设有两数x和y:x=x0x1…xn y=y0y1…yn
若x和y的逻辑异为z:
x⊕y=z=z0z1z2…zn
3
3、逻辑与运算
对两数进行逻辑乘,就是按位求它们的“乘”,所以逻辑乘又称“逻辑
乘”,常用记号“∧”或“·”来表示。
设有两数x和y,它们表示为
x=x0x1…xn
y=y0y1…yn
若 x∧y=z=z0z1z2…zn

z =x ∧y ,
i
i
i
(i=0,1,2,…,n)
例 x=10111001,y=11110011,求x∧y。
1、逻辑非运算
逻辑非也称求反。对某数进行逻辑非运算,就是按位求它的反,常用变量 上方加一横来表示。
设一个数x表示成: x=x0x1x2…xn 对x求逻辑非,则有 x=z=z0z1z2…zn
zi=xi (i=0,1,2,…n)
2
2、逻辑或运算
对两个数进行逻辑加,就是按位求它们的“加”,所以逻辑加又称逻辑
6
按总线的逻辑结构来说,总线可分为单向传送总线和双向传送总线。 所谓单向总线就是信息只能向一个方向传送。所谓双向总线就是信息可以 分两个方向传送,既可以发送数据,也可以接收数据。
下图是带有缓冲驱动器的4位双向数据总线。其中所用的基本电路就 是三态逻辑电路。当“发送”信号有效时,数据从左向右传送。反之当 “接收”信号有效时,数据从右向左传送。这种类型的缓冲器通常根据它 们如何使用而叫作总线扩展器、总线驱动器、总线接收器等等。

5讲 定点数除法

5讲 定点数除法

Ë Ô Ó ¼ õ ¼ Ë ³ ý ³
第5讲
21
第3章—2 定点数除法运算
八、运算部件

浮点运算器
根据浮点运算算法,浮点运算器一般包括阶码 运算何尾数运算两个部分。 阶码运算是一个定点整数运算部件; 尾数运算是一个定点小数运算部件。 Intel 80287支持80位浮点数运算,其中阶码 16位,尾数64位。关键运算部件有:
12

舍入处理


检查是否溢出

第5讲
第3章—2 定点数除法运算
五、浮点数的加、减运算方法

已知:X=2010· (0.11011011), Y=2100· (-0.10101100),求Z=X+Y。




①对阶操作: 阶差△E=[Ex]补+[-Ey]补=00010+11100=11110 X阶码小,Mx左移2位,保留阶码E=00100 Mx=0.0011 0110 11,[Mx]补=00.0011 0110 11 ②尾数相加: [Mx]补+[My]补=11.1000 1010 11, Mz=-0.0111010101 ③规格化操作: 左移一位, [Mz]补=11.0001 0101 10 阶码减1,E=00011 ④舍入:附加位最高位为1,在结果的最低位+1, [M]补=11 00010110,M=-0.11101010 ⑤判溢出:阶符为00,不溢出,最终结果为

截断处理:无条件地丢掉正常尾数最低位之后的全部数值 舍入处理:运算过程中保留右移中移出的若干高位的值,然而 再按某种规则用这些位上的值修正尾数

第5讲
判溢出
14
第3章—2 定点数除法运算
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

在计算机中实际采用的是不恢复余数法Non-restoring division 。
16
3. 加减交替法(不恢复余数法Non-restoring division )
14
原码除法运算
Unsigned Binary Division
原码除法,商的符号位是除数和被除数的符号位的异或值, 商的值是用被除数的绝对值除以除数的绝对值得出的。
计算机不能象人那样用观察的方法决定是上商0还是上商1。 1. 比较法
用汇编语言编写除法运算程序,可以用比较指令比较除数和被 除数(余数)的大小,以决定是上商0还是上商1,这就是比较法。
Examples of slow division include restoring, non-performing restoring, non-restoring, and SRT division.
Fast division methods start with a close approximation to the final quotient and produce twice as many digits of the final quotient on each iteration. Newton-Raphson and Goldschmidt fall into this category.
2
开始
补码一位比较乘法流程图
i=0, [P0]补 =0
01 [Pi]补+[X]补
10 YnYn+1
=
00 或11
[Pi]补 + 0 [Pi]补+[-X]补
i = n+1?
Y 结束
N
[Pi]补,[Y]补右移一位 i+1→i
阵列乘法器 高速的并行乘法运算
The engineering implementation of binary multiplication consists of taking a very simple mathematical process and complicating it a lot, in order to do fewer additions; a modern processor can multiply two 64bit numbers with 16 additions (rather than 64), and can do several steps in parallel.
比较法要多做一次比较,降低了速度。
15
2. 恢复余数法
Restoring division
直接从被除数/余数中减去除数,若够减,余数为正,上商1; 若不够减,余数为负,上商0。此时,必须将除数加回去,恢复 成原来的余数,以便继续计算,因此称为恢复余数法。
恢复余数法在不够减时要恢复余数,多做一次加法操作,运 算速度因而受到影响,控制线路复杂,运算不规则,运算时间与 数据有关。
计算机的比较指令实质上也是做减法,但摒弃减法的结果, 不改变被减数,只影响状态标志寄存器的Cy(进位/借位),S (符号),Z(零)等标志位的状态。
若Cy=1,表明有借位,被除数小于除数,应当上商0,不做 被除数/余数减除数,只把被除数/余数左移一位。反之,上商1, 做被除数/余数减除数,并把余数左移一位。
然后继续重复以上步骤, 直至除尽(余数为0)或求 得的商的位数满足要求为 止。
13
计算机实现除法时,要把除数右移改为被除数/余数左移。 要求计算机把求得的商直接写进商寄存器的每个对应位也是 不可取的,通常是把商上到商寄存器的最低位,并把部分商左移 一位。 运算过程中,存放被除数/余数和商的寄存器一同移位。计算 完成后,商寄存器中是商的尾数,原来存放被除数的寄存器中是 余数。 做减法时,对于n位的除数,也不要求2n位的加法器,只需 用n位的加法器即可。
若除数是n位,则得到n位的商Quotient和n位的余数Remainder。
整数除法若被除数Dividend只有n位,是不会发生溢出的。但 是,若被除数为2n位,则被除数的高n位的绝对值必须小于除数 Divisor的绝对值,否则,将发生溢出。
小数除法,只要满足 |被除数|<|除数| 就不会溢出。
12
•对于定点小数,若被除数大于或等于除数,则商将大于或等于1,
发生溢出。
所以,小数除法要求 0<|被除数|<|除数|。
•对于定点整数,商也应是整数。要求 0<|除数|≤|被除数|。
计算机在做除法之前,必须先检查除数和被除数是否为零。若 除数为零,则转出错处理。若被除数为零,则直接得出商为零。
若除数和被除数都不为零,则判断是否可能发生溢出。
计算机组成原理第5讲定点除法
第3章 运算方法和运算部件
(4)
Several algorithms exist to perform division in digital designs. These algorithms fall into two main categories: slow division and fast division. Slow division algorithms produce one digit of the final quotient per iteration.
手工计算二进制除法的方法
商0.1 1 0 1 1 除数 0.1101 0.1011 被除数
01101 部分余数 010010
01101 Partial Remainder 0010100
01101 001110 01101
先判断被除数与除数的大小
若被除数小,则上商0,并 把被除数的下一位(若存 在)移下来;或在余数最 低位补0,再用余数与右移 一位的除数比较,若够除 则上商1,否则上商0。
10
§ 3. 4 二进制除法运算
Binary (Fixed-Point) Division Arithmetic
ห้องสมุดไป่ตู้
Unsigned Binary Division Tow’s complement Division
原码除法 补码除法
11
计算机的除法运算对除数和被除数的大小有限制。
首先,除数不能为零。其次,定点除法运算可能会发生溢出。
相关文档
最新文档