计算机组成原理 第六-八讲 计算机算法和算法逻辑实现 2021年2月21日 计算机组成原理
计算机组成原理 1 计 算 机 组 成 原 理 第六-八讲 2021年2月21日 计算机算法和算法逻辑实现
本讲安排 1、定点数加减法运算及电路实现 补码的加减法运算,全加器,溢出,快速加法 运算(进位链),74181ALU 2、定点数乘除运算和电路实现 原码、补码,布斯算法,原码恢复余数、不恢 复余数 3、快速乘除法运算技术和电路实现 布斯高基乘法,阵列乘法器,阵列除法器 4、浮点数四则运算以及实现 加减乘除 计算机组成原理
计算机组成原理 2 1、定点数加减法运算及电路实现 补码的加减法运算,全加器,溢出,快速加法 运算(进位链),74181ALU 2、定点数乘除运算和电路实现 原码、补码,布斯算法,原码恢复余数、不恢 复余数 3、快速乘除法运算技术和电路实现 布斯高基乘法,阵列乘法器,阵列除法器 4、浮点数四则运算以及实现 加减乘除 本讲安排
本讲将解决的主要问题 掌握计算机算法。 加减乘除运算方法和运算器的构成, 原码和补码的加减乘除四则运算, 浮点数的四则运算。 计算机组成原理
计算机组成原理 3 本讲将解决的主要问题 掌握计算机算法。 加减乘除运算方法和运算器的构成, 原码和补码的加减乘除四则运算, 浮点数的四则运算
补码加、减法 溢出概念与检测方法 基本的二进制加法减法器 十进制加法器 计算机组成原理
计算机组成原理 4 补码加、减法 溢出概念与检测方法 基本的二进制加法/减法器 十进制加法器
补码加法 1.原码加/法运算 加法规则: 先判符号位,若相同,绝对值相加,结果符号不变;若不 同,则作减法,大-小|,结果符号与|大相同。 减法规则: 两个原码表示的数相减,首先将减数符号取反,然后将被 减数与符号取反后的减数按原码加法进行运算。 计算机组成原理
计算机组成原理 5 加法规则: 先判符号位,若相同,绝对值相加,结果符号不变; 若不 同,则作减法, |大| - |小|,结果符号与|大|相同。 减法规则: 两个原码表示的数相减,首先将减数符号取反,然后将被 减数与符号取反后的减数按原码加法进行运算。 补码加法 1.原码加/减法运算
2.补码加法运算 补码加法的公式: x]补十[y]补=[x+y]补 (mod 2) 特点:不需要事先判断符号,符号位与码值位一起参加运算 符号位相加后若有进位,则舍去该进位数字。 在模2意义下,任意两数的补码之和等于该两数之和的补码。 这是补码加法的理论基础。 计算机组成原理 6
计算机组成原理 6 补码加法的公式: [ x ]补+[ y ]补=[ x+y ]补 (mod 2) 在模2意义下,任意两数的补码之和等于该两数之和的补码。 这是补码加法的理论基础。 2.补码加法运算 特点:不需要事先判断符号,符号位与码值位一起参加运算。 符号位相加后若有进位,则舍去该进位数字
公式证明: 假设采用定点小数表示,因此证明的先决条件是: x|0,y>0,则x+y>0。 相加两数都是正数,故其和也一定是正数。正数的补码和原 码是一样的,可得: Ixl补+[yl补=x+y=x+y补(mod2) 计算机组成原理
计算机组成原理 7 假设采用定点小数表示,因此证明的先决条件是: ︱x︱﹤1, ︱y︱﹤1, ︱x+y︱﹤1。 (1) x﹥0, y﹥0, 则 x+y﹥0。 相加两数都是正数,故其和也一定是正数。正数的补码和原 码是一样的,可得: [ x ]补+[ y ]补=x+y=[ x+y ]补 (mod 2) 公式证明:
(2)x>0,y0或x+y0时,2+(x+y)>2,进位2必丢失,又因(x+y)>0, 故x补+y补=x+y=x+yl补(mod2) 当x+y<0时,2+(x+y)<2,又因(x+y)<0, 故x补+叫l补=2+(x+y)=x+y补(mod2) 计算机组成原理
计算机组成原理 8 (2) x﹥0, y﹤0, 则 x+y>0 或 x+y0 时, 2+ (x+y) > 2, 进位2必丢失, 又因 (x+y)>0, 故 [x]补+[ y]补=x+y=[ x+y]补 (mod 2) 当x+y<0时, 2 + (x+y) < 2, 又因 (x+y)<0, 故 [x]补+[y]补=2+(x+y)=[x+y]补 (mod 2)
(3)x0,则x+y>0或x+y<0。 同(2),把x和y的位置对调即可。 (4)x<0,y<0,则x+y<0。 相加两数都是负数,则其和也一定是负数。 补 2 Iyl补=2+ [l补+y补=2+x+2+y=2+(2+x+y) 因为x+y<1,1<(2+x+y)<2,2+(2+x+y)进位2 必丢失,又因x+y<0 故x补+[y补=2+(x+y)=|x+yl补(mod2) 计算机组成原理
计算机组成原理 9 (3) x0, 则 x+y>0 或 x+y<0。 同(2),把 x 和 y 的位置对调即可。 (4) x<0, y<0, 则 x+y<0。 相加两数都是负数,则其和也一定是负数。 ∵ [x]补=2+x, [ y]补=2+y ∴ [x]补+[ y]补=2+x+2+y=2+(2+x+y) 因为|x+y|<1, 1<(2+x+y)<2, 2+(2+x+y) 进位2 必丢失,又因x+y<0 故 [x]补+[ y]补=2+(x+y)=[ x+y]补 (mod 2)
结论: 至此证明了在模2意义下,任意两数的补码之和等于该两 数之和的补码。 其结论也适用于定点整数。 补码加法的特点: (1)符号位要作为数的一部分一起参加运算; (2)在模2的意义下相加,即大于2的进位要丢掉。 计算机组成原理 10
计算机组成原理 10 至此证明了在模2意义下,任意两数的补码之和等于该两 数之和的补码。 其结论也适用于定点整数。 补码加法的特点: (1)符号位要作为数的一部分一起参加运算; (2)在模2的意义下相加,即大于2的进位要丢掉。 结论: