计算机组成原理简明教程 978-7-302-19561-0jx chap03
(95页)
本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦!
9.90 积分
计算机组成原理简明教程 ⊙ 第 三 章 运 清算华方大法学和出运版算社器 第3章 运算方法和运算器 教学目标 教学重点 教学过程 2019年10月15日 第1页计算机组成原理简明教程 ⊙ 第三章运算方法和运算器 教学目标 l 理解和掌握数据在运算器中的基本运算方法 l 理解运算器核心部件ALU的组成与工作原理 2019年10月15日 第2页计算机组成原理简明教程 ⊙ 第三章运算方法和运算器 教学重点 l 运算器的核心部件-ALU的组成和工作原理 l 定点数和浮点数四则运算 2019年10月15日 第3页计算机组成原理简明教程 ⊙ 第三章运算方法和运算器 教学过程 l 3.1 定点数的加减运算 l 3.2 定点乘法运算 l 3.3 定点除法运算 l 3.4 定点运算器的组成和结构 l 3.5 浮点算术运算方法和浮点运算器2019年10月15日 第4页计算机组成原理简明教程 ⊙ 第三章运算方法和运算器 计算机进行算术运算的特点 (1)所有数据都是用二进制数位形式来表示的。 (2)在计算机内部数以编码形式即机器数来表示的。 (3)机器运算用电子设备实现,电子设备规模有限, 因而机器运算要解决运算方法、数据表示格式及 数据长度的选取、规定等问题。 (4)用计算机进行运算时,都要把复杂的运算,简化 为一系列最基本的运算才能实现。计算机可以实 现的基本运算有算术运算(加、减、乘、除等)和 逻辑运算(与、或、异或等)。 2019年10月15日 第5页计算机组成原理简明教程 ⊙ 第三章运算方法和运算器 3.1 定点数的加减运算 l 3.1.1 补码加减运算规则 l 3.1.2 基本的二进制加法/减法器 l 3.1.3 加法运算及其加速方法 2019年10月15日 第6页计算机组成原理简明教程 ⊙ 第三章运算方法和运算器 补码加法 l 补码加法的公式是 [x]补+[y]补= [x+y] 补 l 在模2意义下,任意两数的补码之和等于该两 数之和的补码 l 这是补码加法的理论基础,其结论也适用于 定点整数2019年10月15日 第7页例:x=0.1001,y=0.0101,求x+y [x] 补=0.1001,[y] 补=0.0101 [x] 补 0.1001 + [y] 补 0.0101 [x+y] 补 0.1110 所以 x+y=+0.1110 例:x=+0.1011,y=-0.0101,求x+y [x] 补=0.1011,[y] 补=1.1011 [x] 补 0.1011 + [y] 补 1.1011 [x+y] 补 10.0110 所以 x+y=0.0110计算机组成原理简明教程 ⊙ 第三章运算方法和运算器 补码减法 l 负数的减法运算可以转化为加法来做,它可 以和常规的加法运算使用同一加法器电路, 从而简化了计算机的设计 l 数用补码表示时,减法运算的公式为 [x-y]补 = [x]补-[y]补=[x]补+ [-y]补 2019年10月15日 第10页例:已知x1=-0.1110,x2=+0.1101求: [x1]补 ,[-x1]补 ,[x2]补 ,[-x2]补 [x1]补=1.0010 -4 [- x1]补=﹁[x1]补+ 2 =0.1101+0.0001=0.1110 [x2]补=0.1101 -4 [-x2]补=﹁[x2]补+ 2 =1.0010+0.0001=1.0011 例:x=+0.1101,y=+0.0110,求x-y[x]补=0.1101, [y]补=0.0110[-y]补=1.1010 [x] 补 0.1101 + [-y] 补 1.1010 [x-y] 补 10.0111 所以 x-y=+0.0111计算机组成原理简明教程 ⊙ 第三章运算方法和运算器 溢出概念与检验方法 u两个正数相加,结果为负(即:大于机器 所能表示的最大正数),称为上溢。 u两个负数相加,结果为正(即:小于机器 所能表示的最小负数),称为下溢。 u运算出现溢出,结果就是错误的2019年10月15日 第13页[例] x=+0.1011, y=+0.1001,求x+y。 [解:] [x]补=0.1011 , [y]补=0.1001 [x]补 0.1011 + [y]补 0.1001 无进位 有进位 [x+y]补 1.0100 两正数相加,结果为负,显然错误。 --运算中出现了“上溢”[又例] x=+0.1011, y=+0.0010, 求x+y。[解:] [x]补=0.1011 , [y]补=0.0010 [x]补 0.1011 + [y]补无 进位 0.0010 无进位 [x+y]补 0.1101两正数相加,结果无溢出[例] x=-0.1101, y=-0.1011, 求x+y。[解:] [x]补=1.0011 [y]补=1.0101 [x]补 1.0011 + y 有 [进位]补 1.0101 无进位 [x+y]补 0.1000 两负数相加,结果为正,显然错误。 --运算中出现了“下溢”[又例] x=-0.1101, y=-0.0010, 求x+y。[解:] [x]补=1.0011 [y]补=1.1110 [x]补 1.0011 + y 有 [进位]补 1.1110 有进位 [x+y]补 1.0001 两负数相加,结果为负,无 溢出。 产生“溢出”的原因: 分析可知,当最高有效数值位的运算进位与符号位 的运算进位不一致时,将产生运算“溢出”进一步结论: 当最高有效位产生进位而符号位无进位时,产生上溢; 当最高有效位无进位而符号位有进位时,产生下溢。 “溢出”检测方法 为了判断“溢出”是否发生,可采用两种检测的方法。第一种方法:采用双符号位法, 称为“变形补码”或 “模4补码”,可使模2补码所能表示的数的范围扩大 第一二倍种溢出检测方法:采用“单符号位法”。 当最高有效位产生进位而符号位无进位时,产生上溢; 当最高有效位无进位而符号位有进位时,产生下溢。 故:溢出逻辑表达式为: V=Cf?Co 其中: Cf为符号位产生的进位,Co为最高有效位产生的 进位。(显然:此逻辑关系可用异或门方便地实现) 在定点机中,当运算结果发生溢出时,机器通过逻 辑电路自动检查出溢出故障,并进行中断处理。 计算机组成原理简明教程 ⊙ 第三章运算方法和运算器 3.1.1 补码加减运算规则(1/4) l 公式总结: v [X+Y]补=[X]补+[Y]补 v [X-Y]补=[X]补+[-Y]补 例3-1 X=0.101101,Y=-0.110100,求[X+Y]补 解: [X]补=0.101101,[Y]补=1.001100 [X+Y]补 = [X]补+[Y]补 = 0.101101 + 1.001100 = 1.111001 2019年10月15日 第20页计算机组成原理简明教程 ⊙ 第三章运算方法和运算器 3.1.1 补码加减运算规则(2/4) 例3-2 X=0.001010,Y=-0.10011,求[X-Y]补 解: [X]补 = 0.001010 [-Y]变补 = 0.100011 [X-Y]补 = [X]补+[-Y]补 =0.001010 + 0.100011 = 0.101101 2019年10月15日 第21页计算机组成原理简明教程 ⊙ 第三章运算方法和运算器 3.1.1 补码加减运算规则(3/4) l 溢出及处理:补码加减运算可能溢出,为判断,采用变形补码形式 l 判断溢出的原则:以两位符号位表示数的符号。当两符号位不同时, 溢出;两符号位相同时,无溢出。无论是否发生溢出,最高符号位 代表真正的符号。 l 变形补码的加减法,同样是两个符号位都看作数值位参加运算,最 高符号位产生的进位丢掉。 [X+Y] 变补=[X] 变补+[Y] 变补 [X-Y] 变补=[X] 变补+[-Y] 变补 l 例3-3 X=0.1011,Y=0.0011,求[X+Y]补 解:[X]变补= 00.1 关 键 词: 计算机组成原理简明教程978-7-302-19561-0jxchap03
天天文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文
本文标题:计算机组成原理简明教程 978-7-302-19561-0jx chap03
链接地址: https://www.wenku365.com/p-43810180.html