第3章数值的机器运算
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第 3 章数值的机器运算
3.1基本内容摘要
1、定点数的加、减法运算和加、减法电路的实现
◆定点数的加减运算
补码的加法公式、补码的减法公式;
◆补码的溢出判断和检测方法
溢出的产生、符号比较法、双进位法、双符号位法;
◆从半加器到算术逻辑部件ALU
半加器、全加器、并行加法器、加减法部件ASU、 BCD码(十进制)加法器、算术逻辑部件 ALU;
2、定点数的乘、除法运算和乘、除法电路的实现
◆定点数的乘法运算和乘法电路的实现
原码一位乘法、原码一位乘法运算器、补码原码一位乘法、补码原码一位乘法运算器;
◆定点数的除法运算和除法电路的实现
原码除法、原码加减交替法除法运算器、补码除法;
3、逻辑运算
◆“与”、“或”和“非”运算
逻辑与、逻辑或、逻辑非
◆“异或”运算
4、定点运算器的基本结构与工作原理
◆移位电路
◆定点运算器的主要组成
5、浮点数运算和浮点数运算器的实现
◆ 二进制数的浮点表示法
◆ 二进制数的浮点运算
浮点数的加减法运算、浮点数的乘除法运算
◆ 浮点运算器的基本结构
浮点加减运算器硬件结构及其工作原理
3. 2知识点
一、逻辑运算
逻辑与:又称为“逻辑乘”,其逻辑表达式为:
F=A × B=A·B=A ∧ B
逻辑或:又称“逻辑加”,其逻辑表达式为:
F=A+B=A ∨ B
逻辑非:又称为“逻辑反”,其逻辑表达式为:
B = A
异或:又称为“按位加”,其逻辑表达式:
F=A ⊕ B=A ∨B
二、定点数的加、减法运算和加、减法电路的实现
1、补码加减法
补码加法公式:[X+Y] 补=[X] 补+[Y] 补
补码减法公式:[X-Y]补=[X] 补-[Y] 补=[X]补+[-Y] 补
当 X 、Y 、X+Y 均在一定字长补码所表示的数值范围内,公式成立;
补码运算加减运算中,符号位可一起参加运算,不考虑符号位和数值位的区别;
在补码减法运算中,有: [-y ]补 =- [y ]补, [-y]补= [ [y ]补 ]求补
求补运算指对[ y]补包括符号位“求反且最末位加1”
2、溢出及其检测方法
定点数的运算中出现溢出,其运算结果不能表示正确结果,但可以通过一定方法修正。
加减运算中溢出的判别方法有:
(1)符号比较法
溢出判断逻辑表达式:
V = X s Y s (X + Y) s+ X s Y s (X + Y) s+ X s Y s(X - Y) s+ X s Y s(X - Y) s
(2)双进位法
溢出判断逻辑表达式:
V = C in⊕ C out
当 C out C in=0 1,结果正溢;当 C out C in=1 0结果负溢
(3)双符号位法
溢出判断逻辑表达式:
V=S S1⊕ S S2
当 S s1S s2=01结果正溢(或上溢);当S s1S s2=10结果负溢(或下溢);
在补码运算中,最高位(符号位)产生进位并不表示溢出,该进位虽然丢弃,但运
算结果仍然正确。
3、定点加减运算器的结构
(1)半加器:只是对两个输入数据位进行加法的电路,输出一个结果位和一个向高位的进位,不考虑低位的进位。半加器采用一个异或门和一个与门实现。
(2)全加器:两个输入数据位和低位进位输入进行加法运算,输出一个结果位和一个向高
位的进位。全加器采用 2 个异或门、 2 个与门和 1 个或门实现。
( 3)串行进位的并行加法器(行波进位加法器)
n 个全加器串接构成一个n 位并行加法器,即将各位向高位的进位串联起来,低位的进位
输出作为高一位加法器的进位输入,最低位的进位输入端置0。
( 4)先行进位的并行加法器
◆ 先行进位的并行加法器的进位信号
将全加器的进位表达式C i = X i Y i +(X i⊕ Y i)C i-1中
X i Y i定义为“进位生成函数”G i,( Xi ⊕Yi )定义为“进位传送函数”Pi ,
n级并行加法器中各级的进位信号表达式为:
C1=G1 +P1C 0
C2 = G 2+P2G1+P2P1C 0
┊┊
C n = G n+P n G n-1+P n P n-1G n-2++ P n P n-1P2G1 + P n P n-1P2P1C 0
◆先行进位电路CLA 和先行进位CLA加法器
( 5)加减法部件ASU(行波进位的补码加/ 减法器)
( 6)算术逻辑部件ALU
1位 ALU电路原理
4 位 ALU逻辑部件74181 功能及其应用
( 7) BCD码(十进制)加法器
BCD 码加法原理:被加数的 4 位二进制数和加数的 4 位二进制数相加时>1001 则对应4位数要加0110 进行修正;
BCD码减法原理:减数的 4 位二进制数减去被减数的 4 位二进制数时有借位,则对应4位数要减 110 进行修正;
BCD码加法器:加法器和修正电路组成
三、定点数的乘、除法运算和乘、除法电路的实现
1、原码一位乘法
◆ 原码乘法的算法:
乘积 [Z]
原=[X]
原
×[Y]
原
=(X⊕Y)+(O.X X ﹍﹍ X X)× (O.Y Y ﹍﹍ Y Y )SS 1 2n-1 n 1 2n-1 n
◆ 原码一位乘法的计算机实现
步骤:
①取被乘数X 和乘数 Y 的绝对值
| X | = 0. X 1X 2·X n-1X n ,|Y|= 0. Y1Y2·Y n-1Y n
N 位部分积的初值为全“0”;
②以乘数 Y 的最低位 Y n作为判断位,若Y n = 1 ,原部分积之和+被乘数得新部分积之和;
Yn = 0 ,原部分积就是新部分积之和;