数据在计算机中的表示讲.ppt_第1页
数据在计算机中的表示讲.ppt_第2页
数据在计算机中的表示讲.ppt_第3页
数据在计算机中的表示讲.ppt_第4页
数据在计算机中的表示讲.ppt_第5页
已阅读5页,还剩58页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1 54 第三章数据在计算机中的存放 3 1进位计数制及相互转换3 2数据在计算机中的表示 2 54 在计算机内部一切数据的存储 处理和传送均采用二进制形式 为什么 P32主要原因是 1 稳定性二进制数在物理上最容易实现 2 简易性二进制数比十进制数的运算规则简单 这将使计算机的硬件结构大大简化 3 逻辑性二进制只有两个数码 1 和 0 正好与逻辑代数中的 真 和 假 相吻合 3 1进位计数制及相互转换 1 1 11 0 00 1 00 0 0 3 54 但二进制数书写冗长 所以为书写方便 一般用十六进制24数或八进制23数作为二进制数的简化表示 为了适应人的习惯 数值型数据在输入输出设备上仍采用人们十分熟悉的十进制 例如 十进制的10000 二进制为10011100010000 8进制为23420 16进制为2710 4 54 一 数制 十进制 Decimal 简记符为D 0 9共10个数码 逢十进一二进制 Binary 简记符为B 0 1共2个数码 逢二进一八进制 Octal 简记符为O 0 7共8个数码 逢八进一十六进制 Hexadecimal 简记符为H 0 9 A F共16个数码 逢十六进一 5 54 二进制二进制用数字0和1表示数值 采用 逢二进一 计数原则 100 101 110 111 1000 1001 1010 二进制数的表示 0 1 10 11 1011 1100 1101 1110 1111 12101031 是不是合法的二进制数 不是 6 54 八进制八进制用0 1 2 3 4 5 6 7八个数码表示数值 10 11 12 13 14 15 16 17 八进制数的表示 0 1 2 3 4 5 6 7 20 21 22 23 24 110101 是不是合法的八进制数 是 190101 是不是合法的八进制数 不是 7 54 十六进制十六进制用0 1 2 3 4 5 6 7 8 9 A B C D E F十六个数码表示数值 采用 逢十六进一 计数原则 基数为16 位权为16i 0 1 2 3 4 5 6 7 8 9 A B C D E F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 十六进制数的表示 8 54 9 54 678 34 6 102 7 101 8 100 3 10 1 4 10 2 二 进位计数制 任意进制数r 数码 基数 权 数值 基数 权 数码 数值 R进制转化成十进制 用r个基本符号 如0 1 2 r 1 表示数码 逢r进一 r为基数 表示数码的个数 基数为底 数码所在位置的幂表示权 数值是数码和权展开多项式的和 10 54 1 23 0 22 1 21 1 20 1 2 1 0 2 2 1 2 3 1011 101 2 1011 101 8 473 25 8 1 83 0 82 1 81 1 80 1 8 1 4 82 7 81 3 80 2 8 1 5 8 2 4 163 A 162 F 161 8 160 9 16 1 4 16 2 B 16 3 4AF8 94B 16 1 R进制转化成十进制 三 不同进位计数制间的转换 11 54 2 十进制转化成R进制 整数部分 除以r取余数 直到商为0 余数从右到左排列 小数部分 乘以r取整数 整数从左到右排列 100 D 再例100 345 D 100 2 50 0 演示 1100100 144 O 64 H 01011 B 12 54 例 将十进制整数125转换成对应的二进制整数 13 54 例 将十进制小数0 467转换成对应的二进制数 例 将十进制整数125转换成对应的十六进制整数 例 将十进制整数125转换成对应的八进制整数 15 54 3 二进制 八进制 十六进制数间的相互转换 64 H 01100100 B 64 144 26 O 001100100 010110 B 144 26 1 八 十六进制转换为二进制一位八进制数对应三位二进制数一位十六进制数对应四位二进制数 144 26 O 1100100 01011 B 16 54 例 将十六进制数5FD4 A3转换成对应的二进制数 5FD4 A3 16 0101111111010100 10100011则得 5FD4 A3 16 101111111010100 10100011 2 17 54 001101101110 110101 B 1556 65 2 二进制转化成八 十六进制以小数点为中心整数部分 从右向左按三 四 位进行分组小数部分 从左向右按三 四 位进行分组不足补零 1101101110 110101 B O 1101101110 110101 B H 001101101110 11010100 B 36E D4 1556 65 O 36F D4 H 18 54 例 将二进制数1101100111 10111转换成对应的十六进制数 001101100111 10111000367B8则得 1101100111 10111 2 367 B8 16 19 54 二进制 八进制 十六进制数间的关系 20 54 算术运算P29加减乘除 逻辑数据表示真假逻辑运算P30与 或 非 取反 四 二进制数的运算 21 54 3 2数据在计算机中的表示 数据两类 数值数据 非数值数据 计算机只能接收 0 和 1 二进制信号 如何表示和存放数据 就必须对数据进行数字化和编码 编码 即用 0 和 1 的二进制组合来表示数据 2进制 10进制 8进制 16进制 字符 图形 图像 声音 视频 22 54 符号位 0 表示正 1 表示负 一 数值在计算机中的表示 把数值真值数的 符号用 0 和 1 表示 机器数 真值 例如 76其真值数 76其真值数 数值用7个二进制表示 符号保留 0101100 0101100 76其机器数 10101100 设一个数占8位 23 54 机器数表示法运算带来问题复杂性 例 5 4的运算 为便于运算 引入了多种编码表示方式 常用的是 原码 反码和补码 其实质是对负数表示的不同编码 正数这三种情况都一模一样 结果应为 1 24 54 带符号数的表示 假定一个数在机器中占用8位 最高位符号位 原码 即机器数形式 符号位 X 0不唯一 0不唯一 0唯一 3 补码 负数 反码加1 即去 号取反加一 2 反码 负数 去 号取反 25 54 举例 假定一个数在机器中占用8位 最高位符号位 求出10 10 120 120的原码 反码及补码 求出130 130的原码 反码及补码 10 00001010 00001010 00001010 10 10001010 11110101 11110110 120 01111000 120 130 01111000 01111000 11111000 10000111 10001000 数值超出7位 超出8位表数范围 所以只能用16位表示 0000000010000010 1000000010000010 130 1111111101111101 1111111101111110 原码 反码 补码 原码 反码 补码 原码 反码 补码 原码 反码 补码 26 54 原码 反码 补码的表数范围 数的范围与机器字长有关 8位整数原码表示的范围为 11111111 01111111 127 127 27 1 27 1 8位整数反码表示的范围为 10000000 01111111 127 127 27 1 8位整数补码表示的范围为 10000000 01111111 128 127 27 1 27 机器字长16位 最小 最大 最小 最大 最小 最大 27 1 27 54 补充 无符号数所有位都是数值位 不存在符号位 即无符号数都是正的 所以也就没有原码 反码 补码的概念 8位无符号数可表示数的范围为 00000000 11111111 0 255 28 1 机器字长16位 最小 最大 28 54 原码 反码 补码的作用 原码 机器数反码 通常作为求补过程的中间形式 其他情况很少使用 补码 目前计算机中的加减法运算基本上都采用补码进行运算 加减法都可以用加法来实现 计算变得简单 即 X Y 补 X 补 Y 补 X Y 补 X Y 补 X 补 Y 补 29 54 例1 21 计算十进制数 39 与 56 之差 39 10 56 10 39 补 56 补 39 补 00100111 56 补 1100100000100111 11001000 11101111结果是否正确 17 30 54 计算机中加减法运算统一化成补码的加法运算 符号位也参与运算 可以验证 任何一个数的反码的反码即是原码本身 补码的补码即是原码本身 31 54 故 为了表示特大或特小的数 用浮点数 科学计数法 来表示 64位字长 则补码表示的最大数为 最小数为 263 1 即9223372036854775807 263 即 9223372036854775808 浮点数 指数形式 在数学中 一个实数可以用指数形式表示 例如 1233 14 1 23314 103 12331 4 10 1 N d 10 p式中 d是尾数 前面的 表示数符 p是阶码 前面的 表示阶符 同样 任意二进制浮点数的表示形式为 N d 2 p 110 011 B 0 110011 2 3 11001 1 2 2 1 110011 2 2 33 54 1 规格化数表示 IEEE754标准 110 011 B 1 110011 2 2 34 54 单精度数 1位8位23位 2 机内存储 双精度数 1位11位52位 单精度加127 双精度加1023 110 011 B 1 110011 2 2 1 110011 2 2 127 1 110011 2129 1 11001100000000000000000 210000001 数符 0表示正 1表示负 尾数中的 1 不存储目的 节省存储空间 单精度 阶码 指数 127双精度 阶码 指数 1023目的 能够处理负数 35 54 26 0D 11010 0B 1 1010 24 1 1010 2131 1 10100000000000000000000 210000011 例2 单精度数 1位8位23位 36 54 2 5D 10 1B 1 01 21 1 01 2128 1 01000000000000000000000 210000000 例3 尾数的位数决定数的精度阶码的位数决定数的范围 单精度数 1位8位23位 双精度数 1位11位52位 37 54 二 字符 1 西文字符ASCII码 AmericanStandardCodeforInformationInterchange 128个常用字符 从0到127需要几位二进制位来编码呢 用7位二进制 27 128思考 若要对学校50个专业进行编码 要用多少位二进制位 美国标准信息交换码 38 54 39 54 128个常用字符ASCII编码分为两类 控制字符 不可显示 0 32 127 见38页换行LF0AH10回车CR0DH13空格SP20H32普通字符 94个 字母与数字的编码如下 0 9 30H 39H48 570110000 A Z 41H 5AH65 901000001 a z 61H 7AH97 1221100001 a 比 A 大32 f 的ASCII值是多少 40 54 41 54 扩展的ASCII编码用8位二进制表示每个字符 扩展的ASCII码提供的编码比普通的ASCII码多128个 这些增加的字符包括花边文字 圆和其他的图形符号 参见后表 扩展的ASCII码 42 54 43 54 汉字编码 汉字输入码音码类 全拼 双拼 微软拼音 自然码和智能ABC等 形码类 五笔字型法 郑码输入法等 汉字在计算机内部都是以汉字机内码表示 44 54 2 汉字国标码 GB2312 80 常用汉字6763个 一级常用汉字 内存 3755个 二级汉字 外存 3008个 汉字的编码分成94个区 每个区中94个汉字 94 94 8836个汉字 由区号和位号 区中位置 构成区位码 例如 中 区位码为5448 十进制 区号和位号各加32 20H 就构成了国标码 例如 中 国标码为8680 每个汉字占几个字节 速度和空间 两个字节 45 54 1981年我国政府颁布实施了GB2312 80 信息交换用汉字编码字符集基本集 也称为国标码 该标准收入了6763个常用汉字 其中一级汉字3755个 按汉语拼音排序 二级汉字3008个 按偏旁部首排序 以及英 俄 日文字母与其它符号682个 共计7445个符号 每个汉字或符号都用两个字节表示 其中每个字节的编码从20H 7EH 即十进值的33 126 这与ASCII码中的可打印字符的取值范围是相同的 都是94个 随着Internet的发展 国家信息标准化委员会于2000年3月17日公布了GB18030 2000 信息技术 信息交换用汉字编码字符集基本基的扩充 该标准共收录了27000多个汉字 可以满足人们对信息处理的需要 为了区分某个码值是代表汉子还是ASCII 在国标码的基础上 把汉子编码的两个字节的最高位一律由 0 改为 1 就构成了汉字的机内码 也即 汉字机内码与国标码的关系为 汉字机内码 国标码 8080H国标码 区位码 2020H因此 我们可以利用字节的最高位来判断 如果最高位为1 则此码值代表的是汉字 如果最高位为0 则此码值代表的是ASCII码 3 机内码 汉字在设备或信息处理系统内部最基本的表达形式 区位码 A0A0H 47 54 区位码国标码机内码中 3630 H华 1B0A H 三种码之间关系 国标码 区位码 2020H汉字机内码 汉字国标码 8080H 区位码 A0A0H 5650 H 0101011001010000 B D6D0 H 1101011011010000 B 3B2A H 0011101100101010 B BBAA H 1011101110101010 B 验证 zhong txt 48 54 4 汉字字形码 a 点阵 汉字字形点阵的代码有16 16 24 24 32 32 48 48等特点 编码 存储方式简单 无需转换可直接输出 放大后产生的效果差思考 一个16 16点阵的汉字占多少字节 32B 256KB若是48 48 两级汉字占 因此汉子字型码只能构成字库 不能用于机内存储 49 54 4 汉字字形码 b 矢量 存储的是描述汉字字形的轮廓特征矢量方式特点正好与点阵相反通过 控制面板 的 字体 对话框可以看到大量的矢量字体和部分的点阵字体 5 其他汉字编码UCS码 Unicode码 GBK码 BIG5码等 50 54 最高位为0 基本多文种平面 BMP 0组0平面 包含字母 音节及表意文字等 例如 A 41H ASCII 00000041H UCS 大 3473H GB2312 00005927H UCS UCS码 通用多八位编码字符集UCS UniversalCodeSet 国际标准世界各种文字的统一的编码方案 一个字符占4个字节 分为 51 54 Unicode码另一国际标准 采用双字节编码统一地表示世界上的主要文字 其字符集内容与UCS的BMP相同 GBK码GBK等同于UCS的新的中文编码扩展 国家标准 2字节表示一个汉字第一字节从81H FEH 最高位为1 第二字节从40H FEH 第二字节的最高位不一定是1 BIG5编码台湾 香港地区普遍使用的一种繁体汉字的编码标准 包括440个符号 一级汉字5401个 二级汉字7652个 共计13060个汉字 52 54 图形 图像 音频 视频的编码 见第八章 三 多媒体 53 54 54 54 作业1 P42练习2中1 2 5 6 8 作业2 P42练习5 7 8 9 55 54 以下是扩展的知识

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论