《计算机组成原理》教程第2章数据的表示

上传人:灯火****19 文档编号:121019488 上传时间:2020-02-14 格式:PPT 页数:71 大小:264.01KB
返回 下载 相关 举报
《计算机组成原理》教程第2章数据的表示_第1页
第1页 / 共71页
《计算机组成原理》教程第2章数据的表示_第2页
第2页 / 共71页
《计算机组成原理》教程第2章数据的表示_第3页
第3页 / 共71页
《计算机组成原理》教程第2章数据的表示_第4页
第4页 / 共71页
《计算机组成原理》教程第2章数据的表示_第5页
第5页 / 共71页
点击查看更多>>
资源描述

《《计算机组成原理》教程第2章数据的表示》由会员分享,可在线阅读,更多相关《《计算机组成原理》教程第2章数据的表示(71页珍藏版)》请在金锄头文库上搜索。

1、计算机组成原理第2章数据的表示 内容 数据的表示方法和转换 数的定点表示和浮点表示 十进制数的表示 数据传送方式和校验 数据的表示方法和转换 进位计数制 进制 进位计数制之间的转换 进位计数制 进位计数制 用少量的数字符号 也称数码 按先后次序把它们排成数位 由低到高进行计数 计满进位 这样的方法称为进位计数制 基数 进位制的基本特征数 即所用到的数字符号个数 例如10进制 0 9十个数码表示 基数为10权 进位制中各位 1 所表示的值为该位的权 常见的进位制 2 8 10 16进制 十进制 Decimal 基数 10符号 0 1 2 3 4 5 6 7 8 9计算规律 逢十进一 或 借一当十

2、 并列表示法 N10 dn 1dn 2 d1d0d 1d 2 d m十进制数的多项式表示 N10 dn 1 10n 1 dn 2 10n 2 d1 101 d0 100 d 1 10 1 d 2 10 2 d m 10 Mm n为正整数 其中n为整数位数 m为小数位数 di表示第i位的系数 10i称为该位的权 10为基值 例如 一个十进制数123 45的表示 123 45 1 102 2 101 3 100 4 10 1 5 10 2注 等式左边为并列表示法 等式右边为多项式表示法 二进制 Binary 基数 2符号 0 1计算规律 逢二进一或借一当二二进制的多项式表示 N2 dn 1 2n

3、1 dn 2 2n 2 d1 21 d0 20 d 1 2 1 d 2 2 2 d m 2 m其中n为整数位数 m为小数位数 di表示第i位的系数 2i称为该位的权 2为基值 十六进制 Hexadecimal 基数 16符号 0 1 2 3 4 5 6 7 8 9 A B C D E F计算规律 逢十六进一或借一当十六十六进制的多项式表示 N16 dn 1 16n 1 dn 2 16n 2 d1 161 d0 160 d 1 16 1 d 2 16 2 d m 16 m其中n为整数位数 m为小数位数 di表示第i位的系数 16i称为该位的权 例如十六进制数 2C7 1F 16的表示 2C7 1

4、F 16 2 162 12 161 7 160 1 16 1 15 16 2 进位计数制之间的转换 R进制转换成十进制的方法十进制转换成二进制方法二进制和八进制之间的转换二进制和十六进制之间的转换 R进制转换成十进制的方法 按权展开法 先写成多项式 然后计算十进制结果 N dn 1dn 2 d1d0d 1d 2 d m dn 1 Rn 1 dn 2 Rn 2 d1 R1 d0 R0 d 1 R 1 d 2 R 2 d m R m 例 例如 写出 1101 01 2 237 8 10D 16的十进制数 1101 01 2 1 23 1 22 0 21 1 20 0 2 1 1 2 2 8 4 1

5、 0 25 13 25 237 8 2 82 3 81 7 80 128 24 7 159 10D 16 1 162 13 160 256 13 269 十进制转换成二进制方法 一般分为两个步骤 整数部分的转换除2取余法 基数除法 减权定位法小数部分的转换乘2取整法 基数乘法 1 除基取余法 2327余数 21631 2811 2401 2200 2100 250 221 210 201 327 10 101000111 2 除基取余法 把给定的数除以基数 取余数作为最低位的系数 然后继续将商部分除以基数 余数作为次低位系数 重复操作 直至商为0 例如 用基数除法将 327 10转换成二进制数

6、 2 减权定位法 将十进制数依次从二进制的最高位权值进行比较 若够减则对应位置1 减去该权值后再往下比较 若不够减则对应位为0 重复操作直至差数为0 例如 将 327 10转换成二进制数256 327 512327 256 71171 128071 64 717 3207 1607 807 4 313 2 111 1 01 乘基取整法 例如 将 0 8125 10转换成二进制小数 整数部分2 0 8125 1 62512 0 625 1 2512 0 25 0 502 0 5 11 0 8125 10 0 1101 2 乘基取整法 把给定的十进制小数乘以2 取其整数作为二进制小数的第一位 然后

7、取小数部分继续乘以2 将所的整数部分作为第二位小数 重复操作 直至得到所需要的二进制小数 小数部分的转换 例如 将 0 2 10转换成二进制小数 整数部分0 2 2 0 400 4 2 0 800 8 2 1 610 6 2 1 210 2 2 0 400 4 2 0 800 8 2 1 610 6 2 1 21 0 2 10 0 001100110011 2 十进制混合小数转换二进制数 由整数与小数组成的十进制数 转为二进制数的方法 先将整数部分用除 取余法转换为二进制数 再将小数部分用乘 取整法转为二进制数的小数部分 再将得到的二进制整数部分与小数部分相加 得到的和即是相应的二进制数据 如

8、 327 8125 10 101000111 1101327 1010001110 8125 0 1101 二进制与八进制 十六进制之间的转换 二八二十六00000000010008001100011100190102001021010A0113001131011B1004010041100C1015010151101D1106011061110E1117011171111F 二进制转换成八进制 例 10110111 01101 2 10110111 01101 2 267 32 8 八进制 267 32 二进制 010 110 111 011 010 二进制 10 110 111 011 0

9、1 低位补零 凑足三位 高位补零 凑足三位 八进制转换二进制 方法 直接将一位八进制数用三位二进制数表示即可 例如 123 46 8 001 010 011 100 110 2 1010011 10011 2 二进制转换成十六进制 例 110110111 01101 2转换成16进制 10110111 01101 2 1B7 68 16 十六进制 1B7 68 二进制 0001 1011 0111 0110 1000 二进制 1 1011 0111 0110 1 低位补零 凑足四位 高位补零 凑足四位 十六进制转换成二进制 方法 一位十六进制数用四位二进制数表示 例如 7AC DE 16 01

10、11 1010 1100 1101 1110 2 11110101100 1101111 2 二进制的优点 见书 运算规则简单 易于实现数的状态简单节省设备 判断方便 无符号数和有符号数 补充 无符号数vs 有符号数 无符号数 不带符号位的数在数据处理的过程中 如不需要设置符号位可用全部字长来表示数值大小 如8位无符号数的取值范围是0 255 2 可用于计数 地址指针等有符号数 带符号位的数若有16位寄存器无符号数 0 65535一位符号位的有符号数 32768 32767 带符号数的编码 真值vs 机器数真值 正 负号加某进制数绝对值的形式称为真值 如二进制真值 X 1011y 1011机器

11、数 符号数码化的数称为机器数如 X 01011Y 11011 机器数的表示方法 一旦符号数字化以后 符号和数值就形成了一种新的编码 在运算过程中 符号位能否和数值部分一起参加运算 如果参与运算 符号位又需要做哪些处理 这些问题都与符号位和数值位所构成的编码有关 机器数有四种表示方法即原码 补码 反码和移码 1 原码表示法 原码表示法用 0 表示正号 用 1 表示负号 数值位用真值的绝对值表示 整数的符号位与数值位之间用逗号 隔开 小数的符号位与数值位之间用小数点 隔开 约定 在本章中 n表示字长的有效位 数值位 X表示真值 注意 跟书中有点出入 例 完成下列数的真值到原码的转换X1 10110

12、11X2 1011011 X1 原 0 1011011 X2 原 1 1011011 整数原码的定义 0的原码有两种表示方式 0 原 0 0000000 0 原 1 0000000原码整数的表示范围 最大值 2n 1 1最小值 2n 1 1 表示数的个数 2n 1 8位 127 127 25516位 32767 32767 65535 原码整数的表示范围 若二进制的位数分别是8 16 其原码表示的最大值 最小值及表示数的个数为 注意 最高位为符号位 有效数值位分别为7 15 原码整数的表示范围 最大值 2n 1 1最小值 2n 1 1 表示数的个数 2n 1 X1 X 0 X 原 1 X0 X

13、 1 例 完成下列数的真值到原码的转换X1 0 1011011X2 0 10110110的原码有两种表示方式 0 原 0 0000000 0 原 1 0 0000000 1 0000000 X1 原 0 1011011 X2 原 1 1011011 小数原码的定义 最大值 1 2 n最小值 1 2 n 表示数的个数 2n 1 若二进制原码小数的位数分别是8 16位 求其该数表示的最大值 最小值及所能表示数的个数 8位 127 128 127 128 25516位 32767 32768 32767 32768 65535 原码小数的表示范围 注意 最高位为符号位 有效数值位分别为7 15 X1

14、 X 0 X 原 1 X0 X 1 原码特点 表示简单 易于同真值之间进行转换 实现乘除运算规则简单 进行加减运算十分麻烦 本来是加法运算却可能要用减法器实现 当两个操作数符号不同且做加法运算时 先要判断两个数绝对值的大小 然后将绝对值大的数减去绝对值小的数 结果的符号以绝对值大的数为准 0的表示不惟一 2 补码表示法 以钟表对时为例说明补码的概念假设现在的标准时间是3点整 而有一只表已经6点了 为了校准时间 可以采用两种方法 1 逆时针 将时钟退3格 2 顺时针 将时钟向前拨9格这两种方法都能对准到3点 由此可以看出 减3和加9是等价的 就是说9是 3 对12的补码 可以用数学公式表示为 3

15、 9 mod12 为取模相等 这里12是模数 上例中6 3和6 9之所以等价 是因为表指针超过12时 将12自动丢掉 最后得到 6 9 12 3 重要启示 负数用补码表示时 可以把减法转化为加法 补码的概念 模 计量器具的容量 或称为模数 N位字长整数的模值为2N4位字长的机器表示的二进制整数为 0000 1111共16种状态 模为16 24 一位符号位的纯小数的模值为2补码的定义 正数的补码就是正数的本身 负数的补码是原负数加上模 例 完成下列数的真值到补码的转换X1 1011011X2 1011011 X1 补 0 1011011 X2 补 27 1 x 1 0100101 整数补码的定义

16、 X1 X 0 x 补 2 X0 X 1 mod2 例 完成下列数的真值到补码的转换X1 0 1011011X2 0 1011011 X1 补 0 1011011 X2 补 1 0100101 小数补码的定义 例 0的补码 补码中 零 只有一种表示形式 0 0000000 0 0000000 0 0000000 2 0 0000000 mod2 0 000000 1的补码 不妨补码的有效数值位为n根据定义 对于整数补码有 1 补 2n 1 1 1 11111 1 包括符号位一共n 1个1 根据定义 对于小数补码有 1 补 2 1 0 0 1 0 0 n个0 由此可见 1 既可以在整数范围内表示 也能在小数范围内表示 在计算机中有两种不同的补码表示 再看负数 2n的补码表示 2n 补 2n 1 2n 2n 1 1 0 0 n个0 因此 1 的补码小数表示与 2n 的补码表示结构相同 都是 符号位为1 数值部分为n个0 1 与 2n 分别是补码小数和补码整数中可以表示的最小负数 补码的表示范围 n位有效数值位 不包括符号位n位整数 2n 1 2nn位小数 1 2 n 1均能表示2n个数 原

展开阅读全文
相关资源
相关搜索

当前位置:首页 > IT计算机/网络 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号