




已阅读5页,还剩84页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第二章运算方法和运算器 P122 2 1数据信息的表示方法 2 2算术 逻辑运算部件 2 3定点加减运算 2 4定点乘除法运算 2 5浮点四则运算 2 6运算器组织 2 1数据信息的表示方法 2 1 1进位计数制一 二进制数的表示对于任意一个二进制数N 用位置计数法表示如下 用按权展开法表示为 式中 表示各个数字 为 或 为整数部分的位数 为小数部分的位数 例 二 八进制 每位可选用的数码有 个 逢 进位 基数为 例 三 十六进制 每位可选用的数码共16个 为 逢 进位 基数为 例3 四 二 十进制 用二进制编码表示十进制数 称为 码 BinaryCodedDecimal 最基本的是 码 例 2 1 2数制转换 一 二进制数与十进制数之间的转换 例 按权展开 然后相加 2 58 10 111010 2 2 纯小数转换 乘2取整 法 0 625 10 0 101 2 58 625 10 111010 101 2 二 八进制 十六进制与二进制间的转换 8 23 16 24 11011010 101011 则 11011010 101011 2 332 53 8 DA AC 16 2 1 3带符号数的表示 以纯小数为例 真值 日常书写中 用正 负符号加绝对值表示数值 这种形式表示的数值称为真值 机器数 计算机内部连同符号都一起数字化了的数 称为机器数 一 原码表示法 例 真值 0 1011111 则 原 0 1011111 0 1011111 则 原 1 1011111 例 0 1011111 则 原 X 0 1011111 0 1011111 则 原 0 1011111 1 1011111注意 真值 有两种表示 和 原 0 00 0 原 1 00 0 二 反码表示法 例 真值 0 1001111 则 原 0 1001111 反 0 1001111 0 1001111 则 原 1 1001111 反 1 0110000 例 0 1101111 则 反 0 1101111 0 1101111 则 反 2 2 7 X 10 0000000 0 0000001 0 1101111 1 1111111 0 1101111 1 0010000 注意 反 0 00 0 反 1 11 1 三 补码表示法 例 0 1010000 原 0 1010000 补 0 1010000 0 1010000 原 1 1010000 补 1 0110000 例 0 1011101 则 补 0 1011101 0 1011101 则 补 0 1011101 10 0000000 0 1011101 1 0100011注意 0 补 0 补 0 00 0 而 1 补 1 00 0 四 原码 反码与补码之间的关系 对于正数 原 反 补 对于负数 原 反 反 补 补 例 已知 反 1 1010100 求 原 解 原 反 反 1 1010100 反 1 0101011 例 已知 补 1 0111001 求 原 解 原 补 补 1 0111001 补 1 1000111 五 整数的原码 反码及补码 类同于小数 只是把 改成 表示隔开符号位 例 若 1010101则有 原 0 1010101 反 0 1010101 补 0 1010101若 1010101则有 原 1 1010101 反 1 0101010 补 1 0101011 2 1 4定点表示与浮点表示 一 定点表示 小数点位置固定不变表示定点数 定点小数表示 X0 X1X2 Xn 1Xn定点整数表示 XnXn 1 X1X0 小数点的位置是一种隐含约定 不需要用某个数位或触发器一类来表示 在运算过程中小数点位置不变 例 一个字节八位二进制硬件表示定点整数和定点小数的典型数值 原码定点整数原码定点小数绝对值最大负数 11111111 27 1 12711111111 1 2 绝对值最小负数 10000001 110000001 2 7最大正数 01111111 27 1 12701111111 1 2 7非零最小正数 00000001 100000001 2 7数的范围 27 1 27 1 1 2 7 1 2 7 引伸到n位时 2n 1 1 2n 1 1 1 2 n 1 1 2 n 1 补码定点整数补码定点小数绝对值最大负数 10000000 27 12810000000 1绝对值最小负数 11111111 11111111 2 7最大正数 01111111 27 101111111 1 2 7非零最小正数 00000001 100000001 2 7数的范围 27 27 1 1 1 2 7 引伸到n位时 2n 1 2n 1 1 1 1 2 n 1 定点数表示的缺点 数据表示范围小 例如用 位硬件表示的整数 补码表示的整数的范围 215 215 1 即 32768 32767 很容易产生溢出 优点 定点数比较简单 表示数据的有效精度高 位可全部用来表示数据位数 课堂作业 某机器用13位硬件来表示数据 其中一位符号位 12位数据位 分别求原码定点整数绝对值最大负数和补码定点整数绝对值最大负数 找一个同学上来做 原码定点小数绝对值最大负数 1111111111111 1 2 12 绝对值最小负数 1000000000001 2 12最大正数 0111111111111 1 2 12 非零最小正数 0000000000001 2 12 补码定点小数绝对值最大负数 1000000000000 1绝对值最小负数 1111111111111 2 12最大正数 0111111111111 1 2 12 非零最小正数 0000000000001 2 12 二 浮点表示 其中 为真值 为比例因子 是尾数 浮点数格式 补码定点整数补码定点小数 基数为 浮点数的阶码和尾数都采用补码表示 例 假定某个硬件是一个 位的二进制形式 其中阶码 位 尾数 位 各带一位数符 其浮点数表示范围 补码浮点表示阶码尾数真值绝对值最大负数 0111111110000000 1 2127绝对值最小负数 1000000011111111 2 7 2 135最大正数 0111111101111111 1 2 7 非零最小正数 1000000000000001 2 7 2 135 总结 位二进制的浮点数的表示范围 2127 2127 1 2 7 更进一步 若阶码为 位 尾数为 位 则浮点数表示范围 例 若定点整数字长 位 内含一位数符 补码表示 则数的表示范围为 231 231 1 例 若浮点数字长 位 其中阶码 位 含一位阶符 补码表示 以 为底 尾数 位 含一位数符 补码表示 规格化 求浮点数的表示范围 解 根据题意 可以得出 代入公式 则浮点数的表示范围为 从 例2 和 例3 可以看出 同样32位硬件 浮点表示的数的范围要比定点数大很多 尾数存放格式为0 1 或1 0 等 例 A 0 0011 B 0 0011A B 0 00001001 如果硬件为5位 则A B 0 0000 A 0 1100 2 2 B 0 1100 2 2 A B 0 1001 2 4 例 假定为14位浮点数 阶码6位 包含一位符号位 尾数8位 包含一位符号位 规格化浮点数的表示范围要小一些 目前所有CPU浮点数据都采用规格化形式表示数据 例 某浮点数格式如前图所示 字长 位 其中阶码 位 含一位阶符 补码表示 以 为底 尾数 位 含一位数符 补码表示 规格化 若浮点数代码为 求其真值 E 10100011 2 1011101 2 93 N 2 93 0 8125 例 按上述浮点格式将 1011 11010 0 2写成浮点数代码 解 N 1011 11010 0 2 0 101111010 0 2 24 E 4 10 00000100 2 M 补 1 010000110 0 2 浮点数代码为 00000100 1010000110 0 2 04A18000 16 2 1 5字符的表示 表2 1ASCII码表 表 各控制字符代表的意义 2 汉字的编码 一 汉字输入码 将每个汉字用一组键盘按键表示 这样形成的汉字编码称为汉字的输入码 汉字输入码应当规则简单 容易记忆 同时为了提高输入速度 输入码的编码应尽可能的短 常见的汉字输入码有数字编码 拼音码和字形码等 数字码如国标区位码 它的特点是无重码 每个编码对应惟一一个汉字 拼音码根据汉字的拼音规则进行编码 具有简单易记的优点 缺点是重码多 因为汉字中有许多同音字 字形码的典型例子是五笔字型编码 它根据汉字的笔画规则进行编码 每个汉字的编码由两部分组成 第一部分指明该汉字所在的区 第二部分指明它在区中的位置 这两部分用二进制表示时各需要7位 像ASCII码一样 在计算机中实际各占8位 为了与ASCII码相区别 还要有附加的标志 目前最常见的方法是把多余的最高位设置为1 二 汉字机内码 汉字机内码是用于汉字信息存储 交换 检索等操作的内部代码 一般采用两个字节表示一个汉字 2 2算术 逻辑运算部件 2 2 1一位全加器 Si表示第 位的和 Ci表示进位信号输出 Ci 1表示低位来的进位 Ai与Bi表示两个加数 则 一位加法单元示意图 2 2 2串行进位并行加法器 串行进位方式是指 逐级地形成各位进位 每一级进位直接依赖于前一级进位 设有两个n位的数 被加数A An A2A1加数B Bn B2B1C0为低位来的进位 采用串行进位的并行加法器 优点 逻辑元器件较少 实现简单 缺点 运算时间较长 进位延时较长 为了解决进位链慢的问题 提出了 先行进位 的概念 2 2 3先行进位并行加法器 先定义 Gi AiBi 进位生成函数Pi AiBi 进位传递函数 则 先行进位的逻辑式 C1 G1 P1C0C2 G2 P2C1 G2 P2 G1 P1C0 G2 P2G1 P2P1C0C3 G3 P3C2 G3 P3G2 P3P2G1 P3P2P1C0 Cn Gn PnGn 1 PnPn 1 P1C0 特点 同时产生进位 加法器延时缩短 实现相对复杂 考虑到高位的进位形式中输入变量太多 实际实现时有一个实用器件扇入系数的限制 实际上常采用分级 分组的进位链结构 1 四位一组先行进位加法器 例 设加法器字长16位 每4位为一组 分为4组 本例中 组内采用先行进位 组间仍然采用的是串行进位 后一组的进位输入要等待前一组的进位输出产生后才能进行运算 组内并行 组间串行进位加法器 组间先行进位加法器 16位加法器设计中 则推出组间先行进位函数式 位先行进位加法器称为二级先行结构 组内先行进位 74181器件完成 组间先行进位 74182器件完成 组内并行 组间并行加法器 2 2 4补码加法器 定义 具有加减法功能的设备称为补码加法器 2 2 5算术逻辑运算部件ALU举例 一 SN74LS181 P134 图7 6 181的内部逻辑结构图 1 四位ALU 四位全加器位于图的下半部 控制端M用来选择逻辑运算或算术运算 S3S2S1S0控制各种加减运算和逻辑运算 2 组内先行进位 片内四位为一小组 组内采用先行进位结构 它提供了组生成函数G和组传递函数P 用以形成更多位ALU的先行进位 本芯片还提供Cn 4输出 利用它可以构成组间串行进位 3 符合比较 A B SN74LS181可执行异或运算 输出 通过输出门 A B 可获得比较结果 74181芯片引脚图如下 二 SN74LS181功能表 P135 注意 1 无进位 0 有进位 三 利用74LS181芯片构成16位ALU原理 1 组间串行进位结构 2 组间先行进位结构 需增加一片74LS182芯片 用4片181和1片182构成16位ALU 算术逻辑运算单元 如果是64位呢 和作为输入产生 进位 此时应为三级先行进位ALU 2 3定点加减运算 P125 一 补码加减运算的公式及规则 2 补码作加减运算时它的符号位是参加运算的 符号位的进位被丢掉 例1 求X Y 其中X 1010000 Y 0011000 1 原码运算 X 原 0 1010000 Y 原 0 0011000因X的绝对值大于Y的绝对值 所以由X作被减数 Y作减数 差值为正 0 1010000 0 00110000 0111000 X Y 原 0 0111000 其真值为X Y 0111000 2 补码运算 符号位参加运算 X 补 0 1010000 Y 0011000 Y 补 1 11010000 1010000 1 1101000 10 0111000丢掉 X Y 补 0 0111000 其真值为X Y 0111000 0 10010 00110 1001 0 0011 1 0111 1 10100 11001 101010 0011 三 溢出判断 P129 运算结果若超出机器数的表示范围 称为溢出 溢出现象总是发生在两数运算结束之后 如果两正数之和为负数或两负数之和为正数 则其和数必为溢出数 例1 设X 1100Y 1000求 X Y 补 解 运算过程中符号位采用双符号位 即变形补码 X 补 00 1100 Y 补 00 100000 1100 00 100001 0100 X Y 补 01 0100 其中两符号出现01情况 表示溢出 本例题数值位采用四位 最多能表示正15 1111 而X 1100 12Y 1000 8 12 8 20 当然超出1111的最大值 所以要溢出 例2 设X 1100Y 1000求 X Y 补 解 运算过程中符号位采用双符号位 X 补 11 0100 Y 补 11 100011 0100 11 100010 1100 X Y 补 10 1100 其中两符号出现10情况 表示溢出 本例题最多能表示 16 而 12 8 20 当然超出1 0000的绝对值最大负数 所以溢出 当 01时称为正溢 上溢 10时称为负溢 下溢 溢出应对处理原则 停机 转溢出处理程序 溢出判别电路V 只需一个异或门即可实现 2 4定点乘除法运算 2 4 1定点乘法运算 工作原理 利用常规的双操作数加法器 把n位乘转化为多次累加与移位循环实现 包括 原码一位乘法 原码二位乘法 补码一位乘法 补码二位乘法等 一 手算法改进 例 0 1001 0 1101 0 1001 0 1101100100001001 10010 01110101 改进 每乘一位后就作一次加法 把原来手算法的左移改为部分积右移 改进后0 1001 0 1101的运算过程为0 1001 0 11011001 01001 000001001 001001 1001101101 0101101 10011110101 01110101 原码一位乘的工作原理 二 原码一位乘法 取两数的绝对值相乘 符号位单独处理 例 X 0 1101 Y 0 1011 求XY 解 X 00 1101 Y 1011步数操作部分积A乘数 Y 00 0000 1011一 X 00 110100 1101 00 01101 101二 X 00 110101 0011 00 100111 10三 0 00 000000 1001 00 0100111 1四 X 00 110101 0001 00 10001111 再加上符号位 XY 原 1 10001111XY 0 10001111 原码一位乘法流程 原码一位乘的运算规则 课堂作业 已知X 0 110 Y 0 101 求XY 用原码一位乘 解 X 00 110 Y 101步数操作部分积A乘数 Y 00 000 101一 X 00 11000 110 00 0110 10二 0 00 00000 011 00 00110 1三 X 00 11000 111 00 011110 再加上符号位 XY 原 0 011110XY 0 011110 三 补码一位乘法 Booth算法 补码一位乘法的运算规则 5 按照上述算法进行n 1步操作 但第n 1步不再移位 仅根据y0与y1的比较结果作相应的运算即可 补码一位乘法流程图 例1 X 0 11010 Y 0 10111求 XY 补 解 X 补 11 00110 X 补 00 11010 Y 补 1 01001 步数操作部分积乘数Yn 1 00 000001 010010 一 00 1101000 11010 00 0110101 01001 二 11 0011011 10011 11 11001101 0100 步数操作部分积乘数Yn 1 11 11001101 0100 三 011 11001 11 111001101 010 00 0101101101 01 五 11 0011011 10001 11 11000101101 0 六 00 1101000 1001010110 0 1001010110 XY 0 1001010110 例2 X 0 1011 Y 0 1110 求 XY 补 用补码一位乘 解 X 补 11 0101 X 补 00 1011 Y 补 0 1110 步数操作部分积乘数Yn 1 00 00000 11100 一 0 00 000000 0000 00 000000 1110 00 0101100 111 二 00 101100 1011 步数操作部分积乘数Yn 1 00 0101100 111 三 000 0101 00 00101100 11 00 000101100 1 四 000 0010 五 11 010111 01100110 1 01100110 XY 0 10011010 课堂作业 X 0 1010 Y 0 1001 求 XY 补 用补码一位乘 解 X 补 11 0110 X 补 00 1010 Y 补 0 1001 步数操作部分积乘数Yn 1 00 00000 10010 一 00 101000 1010 00 010100 1001 二 11 011011 1011 11 1101100 100 步数操作部分积乘数Yn 1 11 1101100 100 三 011 1101 11 11101100 10 四 00 1010100 1000 00 010001100 1 五 11 011011 10100110 1 10100110 XY 0 01011010 补码一位乘法逻辑电路 四 快速乘法简介 快速乘法器不再围绕双操作数的加法器进行算法研究 而是要设计出能一次进行多操作数的加法器 现在有实现多位乘的乘法器集成电路芯片 例如一片实现 位相乘 用若干块芯片可组成更高位数的乘法器 这种模式称为阵列乘法器 阵列乘法器芯片包含两大部分 用若干与门产生与操作数数位对应的多个部分积数位 用多操作数加法网络求乘积 例5 5位无符号数相乘A a5a4a3a2a1B b5b4b3b2b1 2 4 2定点除法运算 原码不恢复余数法 手工除法 先心算被除数够不够减去除数 够减则减去除数 商上1 然后余数补0 相当于余数左移一位 若不够减则直接补0 商上0 再作下一次比较 先判后减 先减后判 2 若不够减 即 2 Y 0 则商上 0 恢复余数为 Y 2 下一步做 2 Y 推导 2 Y Y 2 Y 表达式表明 当出现不够减情况时 不恢复余数 而直接作下一步ri 1 操作为负余数左移一位 再加上Y 其结果与恢复余数后再减Y是等效的 这就是加减交替法 即不恢复余数除法 原码不恢复余数除法规则如下 1 取绝对值相除 符号位单独处理 2 对于定点小数除法 为使商不致溢出 要求 X Y 5 原码除法若最后一步所得余数为负 则应恢复余数 以保持 0 例1 X 原 1 10110 Y 原 0 11101 用不恢复余数法求 X 原 Y 原 Q 原 解 X 00 10110 Y 00 11101 符合 X Y Y 补 11 00011 中途减法必须用补码 步数操作被除数 余数商说明 一 01 01100 Y 11 0001100 011110 00001 0 商上1 二 00 11110 Y 11 0001100 000010 00011 0 商上1 步数操作被除数 余数商说明 三 00 00010 Y 11 0001111 001010 00110 0 商上0 四 10 01010 Y 00 1110111 010110 11000 0 商上0 五 10 01110 Y 00 1110111 001110 01100 0 商上0 六 Y 00 1110100 01000余数为负 加Y恢复余数 Q 原 1 11000 余数 r 原 0 01000 2 5 即商 0 11000 余数 0 01000 2 5 例2 X Y 0 10110 0 11111 用原码不恢复余数法 解 X 00 10110 Y 00 11111 符合 X Y Y 补 11 00001 中途减法必须用补码 步数操作被除数 余数商说明 一 01 01100 Y 11 0000100 011010 00001 0 商上1 二 00 11010 Y 11 0000111 110110 00010 0 商上0 步数操作被除数 余数商说明 三 11 10110 Y 00 1111100 101010 00101 0 商上1 四 01 01010 Y 11 0000111 101110 10110 0 商上0 五 00 10110 Y 11 0000100 010110 01011 0 商上1 六 Y 00 1111100 10110余数为负 加Y恢复余数 即商 0 10110 余数 0 10110 2 5 2 5浮点四则运算 一 浮点加减运算 设两个补码表示的浮点数A Ma 2aB Mb 2b其中Ma Mb是规格化尾数 a b是阶码 浮点数的加减法需要四个步骤 1 对阶 2 求和 差 3 规格化 4 舍入 1 对阶目的就是要使两个尾数小数点对齐 阶码相等 这个操作称为对阶 若 表示两阶相等 小数点已对齐 若 则按阶差值来调整阶码 对阶原则 小阶向大阶看齐 小阶阶码加1 小阶的尾数向右移1位 直至a b 即两数阶码相等 2 尾数相加减完成小数点对齐工作后 尾数就可以进行加减操作了 尾数加减法同定点数加减法 3 结果规格化 当运算后
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 注射用胸腺法新临床应用考核试题
- 2025江苏无锡市锡山区卫生健康系统招聘事业编制卫生人才15人(校园招聘)考前自测高频考点模拟试题及参考答案详解一套
- 2025贵州铜仁开放大学引进专业技术人才考前自测高频考点模拟试题及答案详解(名师系列)
- 2025年甘肃省兰州市肺科医院招聘工作人员14人考前自测高频考点模拟试题及答案详解(有一套)
- 2025年上海市闵行区莘庄实验小学代课教师招聘模拟试卷有答案详解
- 2025北京通建信系统有限公司潍坊分公司招聘20人模拟试卷附答案详解(典型题)
- 2025贵州黔南州瓮安县人力资源和社会保障局招聘公益性岗位人员1人考前自测高频考点模拟试题及答案详解1套
- 2025福建三明市教育局华东师范大学附属三明中学招聘紧缺急需专业工作人员18人(省外高校专场)模拟试卷及答案详解(必刷)
- 2025江苏南通市通州区教育体育系统招聘学前教育备案制教师8人模拟试卷含答案详解
- 2025广西梧州职业学院第一批招聘事业单位实名制人员71人考前自测高频考点模拟试题附答案详解
- 高血压的中医食疗与养生
- 中医体质量表
- 明清传奇小说
- 荐五年级上册第三单元习作猎人海力布故事缩写两个基本方法
- 初中生物学教材解读人教八年级上册生物圈中的其他生物江艾佳细菌八年级上册生物
- GA 1809-2022城市供水系统反恐怖防范要求
- 2022年全国工会财务知识大赛参考题库精简600题(含各题型)
- GB/T 2072-2007镍及镍合金带材
- GB/T 13460-2016再生橡胶通用规范
- 基础观感验收自评报告
- 班级管理(第3版)教学课件汇总全套电子教案(完整版)
评论
0/150
提交评论