第2章 运算方法和运算器(3)
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
[q]原=(xf yf)+(0.xn-l…x1x0/0.yn-1…y1y0)
商的符号运算qf=xf yf与原码乘法一样,用模2求和得到。 商的数值部分的运算,实质上是两个正数求商的运算。
1 第二章 运算方法和运算器(3)
2
第二章 运算方法和运算Fra Baidu bibliotek(3)
在计算机中,小数点是固定的,不能简单地采用手算的办法。为便 于机器操作,使“除数右移”和“右移上商”的操作统一起来。 机器在运算时必须先做减法,若余数为正,才知道够减;若余数为 负,才知道不够减。
9 第二章 运算方法和运算器(3)
应注意:
最上面一行所执行的初始操作经常是减法。 因此最上面一行的控制线P固定置成“1”。 减法用2的补码运算来实现的。
每一行最左边的单元的进位输出决定着商的数值。
将当前的商反馈到下一行,就能确定下一行的操作是加法还是减法。
对不恢复余数阵列除法器来说,在进行运算时,沿着每一行都有进
该阵列除法器是用一个可控加法/减法(CAS)单元所组成的流水阵列 来实现的。
推广到一般情况,一个(n+1)位÷(n+1)位的加减交替除法阵列由(n+1)2个 CAS单元组成,其中两个操作数(被除数与除数)都是正的。
单元之间的互联是用n=3的阵列来表示的。
被除数x是一个6位的小数(双倍长数值): x=0.x1x2x3x4x5x6由顶部一行和最 右边的对角线上的垂直输入线来提供。 除数y是一个3位的小数: y=0.y1y2y3它沿对角线方向进入这个阵列。 这是因为,在除法中所需要的部分余数的左移,可以用“让余数保持固 定,而将除数沿对角线右移” 来代替。 商q是一个3位的小数: q=0.q1q2q3在阵列的左边产生。 余数r是一个6位的小数:r=0.00r3r4r5r6在阵列的最下一行产生。
11
第二章 运算方法和运算器(3)
此便是使用阵列除法器进行除法运算的例子。
当被除数x和除数y送至阵列除法器输人端后,经过3(n+1)2T时间延迟,便在
除法器输出端得到稳定的商数q和余数r的信号电平。
与串行除法器相比,明显的优点是省去了复杂的控制线路,提高了
运算速度。
12
第二章 运算方法和运算器(3)
不恢复余数阵列除法器、补码阵列除法器等等。
我们以不恢复余数阵列除法器为例,来说明这类除法器的组成原理。
(1)可控加法/减法(CAS)单元 它将被采用于除法流水逻辑阵列中。 下图(a)示出了可控加法/减法(CAS)单元的逻辑电路图。 它有四个输出端和四个输入端。 当输入线P=0时,CAS做加法运算; 当输入线P=1时,CAS做减法运算。
利用逻辑运算可以进行两个数的比较,或者从某个数中选取某几位等操作。 在非数值应用的广大领域中,逻辑运算是非常有用的。
计算机中的逻辑运算,主要是指四种基本运算:
逻辑非
逻辑加 逻辑乘 逻辑异等
14
第二章 运算方法和运算器(3)
4 第二章 运算方法和运算器(3)
5
第二章 运算方法和运算器(3)
CAS单元的输人与输出关系可用如下一组逻辑方程来表示:
6
第二章 运算方法和运算器(3)
2.不恢复余数的阵列除法器 不恢复余数的除法也称为 加减交替法。
在该除法阵列中,每一行 所执行的操作究竟是加法 还是减法,取决于前一行 输出的符号与被除数的符 号是否一致。 当出现不够减时,部分余 数相对于被除数来说要改 变符号。这时应该产生一 个商位“0”,除数首先沿 对角线右移,然后加到下 一行的部分余数上。当部 分余数不改变它的符号时, 即产生商位“1”,下一行 的操作应该是减法。
早期计算机中,为了简化结构,硬件除法器的设计采用串行的1位除 法方案。
即多次执行“减法-移位”操作来实现,并使用计数器来控制移位次数。 由于串行除法器速度太慢,目前已被淘汰。
3 第二章 运算方法和运算器(3)
2.5.2 并行除法器 1.可控加法/减法(CAS)单元 阵列除法器也是一种并行运算部件,采用大规模集成电路制造。 阵列除法器有多种形式,如:
2.5 定点除法运算
2.5.1 原码除法算法原理 两个原码表示的数相除时:
商的符号由两数的符号按位相加求得 商的数值部分由两数的数值部分相除求得 设有n位定点小数(定点整数也同样适用): 被除数x: 其原码为[x]原=xf· xn-1…x1x0 除数y: 其原码为[y]原=yf· yn-1…y1y0 则有商q=x/y,其原码为:
位(或借位)传播,同时所有行在它们的进位链上都是串行连接。而每
个CAS单元的延迟时间为3T单元,因此,对一个2n位除以n位的不恢 复余数阵列除法器来说,单元的数量为(n+1)2,考虑最大情况下的信 号延迟,其除法执行时间为
td=3(n+1)2T (2.34) 其中n为尾数数位。
10
第二章 运算方法和运算器(3)
7
第二章 运算方法和运算器(3)
8
第二章 运算方法和运算器(3)
上图(b)示出了4位除4位的不恢复余数阵列除法器的逻辑原理图。 其中:
被除数 x=0.x1x2x3x4x5x6 (双倍长) 除数 y=0.y1y2y3 商数 q=0.qlq2q3 余数 r=0.00r3r4r5r6 字长 n+1=4
不够减时必须恢复原来的余数,以便再继续往下运算,这种方法称为恢复余 数法。 当前的余数加上除数
由于要恢复余数,使除法进行过程的步数不固定,因此控制比较复杂。
实际中常用加减交替法。 其特点是运算过程中如出现不够减,则不必恢复余数,根据余数符号, 可以继续往下运算,因此步数固定,控制简单。
2.6 定点运算器的组成 运算器是数据的加工处理部件,是CPU的重要组成部分。 运算器的最基本的结构中必须有:
算术/逻辑运算单元 数据缓冲寄存器 通用寄存器
多路转换器
数据总线等逻辑构件。
13
第二章 运算方法和运算器(3)
2.6.1 逻辑运算
所谓逻辑数,是指不带符号的二进制数。