第1讲 计算机中数据的表示
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
要完整地表示一个机器数,应考虑机器数的 符号表示、有效值范围、小数点表示三个重要因 素。 (1)机器数的符号表示 用二进制数的最高有效位约定为符号位(符号 位只占1位),其它位表示数值。符号位为0表示 正数,为1表示负数。小数点不占数位(隐含)。 例如: 真值:N1=+0.1001B, N2=-0.1001B, N3=+1001B, N4=-1001B
(10) (2)
3 .数制的转换 (1)二进制数和十进制数间的转换 1)二进制数转换成十进制数 只要把要转换的数按权展开后相加即可。例如: ll0l0.0lB=l×2^4十l×2^3十l×2^1十l×2^-2 =26.25D
2)十进制数转换成二进制数 其转换过程为上述转换过程的逆过程,但十进 制整数和小数转换成二进制的整数和小数的方 法是不相同的。 ①十进制整数转换成二进制整数的方法有很 多,最常用的是“除2取余法”,即除2取余, 后余先排。 例: 将十进制数129转换成二进制数。 解:把129连续除以2,直到商数为0,余数 小于2,其过程如下:
计算机中浮点表示是要把机器数分为两部分,一 部分表示阶码(指数,用有符号整数表示),另一 部分表示尾数(数值的有效数字部分,一般用定点 小数表示),阶码和尾数均有各自的符号位。即任 意一个二进制数N可以写成下面的形式: N=±d· 2^±P d是尾数,一般用定点二进制纯小数表示,是数 值的有效数字部分。d前面的“±”表示数的符号, 用尾数的最高位表示,此符号常常称为数符或尾符; P称为阶码(或阶数),它前面的符号称为阶符,表 示阶码的符号,用阶码的最高位表示。阶码和阶符 指明小数点的位置,小数点随着P的符号和大小而浮 动。
例如: 将十进制数3938转换成十六进制数。 解: 把3938连续除以l6,直到商数为0,余数小 于16,其过程如下:
16
3938 …………… 余2
最低位
16
246
……………
余6
16
15
……………
余15(F)
最高位
0
即得:3938=F62H
②十进制小数转换成十六进制小数采用“乘 16取整法”:乘16取整,整数顺排,直到所 得乘积的小数部分为0或达到所需精度为止。 例如:将十进制数0.566743转换成十六进制 数。(小数点后取3位有效数字)
2.2 计算机中数值数据的表示
1 .机器数和真值 机器数----存储在计算机中的二进制数,数连同 符号数字化,并以二进制编码形式存储 。 而机器数代表的数值称为机器数的真值。 注意:机器数和真值是完全不同的两个概念, 它们在表示形式上也是不同的。机器数的最高位 是符号位,除最高位后的其余位才表示数值。而 真值没有符号位,它所有的数位均表示数值。
以及阐述计算机中的数据校验。
2.1 计数制及其相互转换
1. 进位计数制 所谓进位计数制是指数的制式,是人们利用 符号来计数的一种科学方法,它是指由低位向 高位进位计数的方法。 进位计数制有很多种, 如:十进制、十二进制(如十二个月为一年)、 六十进制(如分、秒的计时)等等。但在微型 计算机中常用的数制就是二进制。 数据无论使用哪种进位计数制,都包含两个 基本要素:基数与位权。
2)数值的位权 在一个数中,每个数字符号所表示的数值等 于该数值符号值乘以与该数字符号所在位有关 的常数,此常数就是“位权”,又简称“权”。 它是计数制每一位所固有的值。位权的大小是 以基数为底、数字符号所在的位置序号为指数 的整数次幂。 注意,对任何一种进制数,整数部分最低位 位置的序号是0,位置每高一位,序号加1,而 小数部分位置序号为负值,位置每低一位,序 号减1。 例如,十进制数的百分位、十分位、个位、 十位、百位上的权依次是10的-2次方、-1次方、 0次方、1次方、2次方。
两种定点数的表示如下图所示:
符号位 数值部分 · 符号位 数值部分 · 定点整数的小 数点位置
定点小数的小 数点位置
2)浮点数
为了在位数有限的前提下扩大数值的表示范 围,又保持数的有效精度,计算机采用浮点表 示法。浮点表示法与科学计数法相似。浮点数 是指一个数的小数点的位置是浮动的,不是固 定的。
(3)机器数的小数点表示 在计算机中,用二进制表示实数的方法有两 种,即定点数和浮点数,小数点不占用数位。 1)定点数 所谓定点数,即小数点在数中的位置是固 定不变的,约定小数点隐含在一个固定位置上。 定点数表示通常又有两种方法。 方法1:约定小数点隐含在有效数值位的最 高位之前,符号位之后,计算机中能表示的数 都是纯小数,该数又被称为定点小数。 方法2:约定小数点隐含在最低位之后,计 算机中能表示的数都是整数,该数又被称为定 点整数。
1)十六进制数转换成十进制数 方法和二进制数转换成十进制数的方法类似, 即把十六进制数按权展开后相加。例如: 5F7A.1H=5×16^3+15×16^2+7×16^1+10×16 ^0+1×16^-1=24442.0625 2)十进制数转换成十六进制数 ①十进制整数转换成十六进制整数采用“除16 取余法”,即除16取余,后余先排。
最高位
……………取整数部分:1
最低位
把所得整数按箭头方向从高到低排列后得到: 0.375=0.011B
注意:对同时有整数和小数两部分的十进制数,其转 换成二进制数的常用方法为:把它的整数和小数部分分开 转换后,再合并起来。但应注意别忘了在整数部分和小数 部分之间加小数点。
(2)十六进制和十进制数间的转换
解:
1
A
7
.
4
C
5
H
0001 1010 0111 .
0100 1100 0101 B
即得:1A7.4C5H =000110100111.010011000101B 注意:别忘了在整数部分和小数部分之间加小数点。
十进制数与任意进制数之间的相互转换和 十进制与二进制之间的相互转换方法类似,本 书就不在介绍,读者可以考虑一下。还可以考 虑一下八进制数与二进制和十六进制之间怎样 转换。
②十进制小数转换成二进制小数通常采用 “乘2取整法”,即乘2取整,整数顺排,直到 所得乘积的小数部分为0或达到所需精度为止。
例: 将十进制数0.375转换成二进制数。
解:把0.375不断地乘2,取每次所得乘积 的整数部分,余下的小数部分继续乘2,直到 乘积的小数部分为0,其过程如下:
Байду номын сангаас
0.375 × 2 0.750 ……………取整数部分:0 0.750 × 2 1.500 0.500 × 2 1.000 ……………取整数部分:1
②二进制运算规则简单 加法规则 减法规则 乘法规则 0+0=0 0-0=0 0×0=0 0+1=1 1-1=0 0×1=0 1+0=1 1-0=1 1×0=0 1 + 1 = 0且进位1 0 - 1 = 1且借位1 1 × 1 = 1 ③与逻辑变量0与1一致 ④与十进制数转换容易 3)八进制 八进制的基数为8,只有 0,1,2,3,4,5, 6,7共8 个数码(数字符号)。进位计数原则 为“逢八进一”。八进制的权为以8为底的幂。
符号位数值部分符号位数值部分定点小数的小数点位置定点整数的小数点位置?计算机中浮点表示是要把机器数分为两部分一部分表示阶码指数用有符号整数表示另一部分表示尾数数值的有效数字部分一般用定点小数表示阶码和尾数均有各自的符号位
第1讲 计算机中数据的表示
现代计算机有数字电子计算机和模拟电子计算机两 大类。目前大量使用的计算机属于数字电子计算机,它 只能接受0、1形式的数字数据。但是现实由计算机处理 的信息形式各种各样,既有文字、数字、图形、图象等 静态信息,亦有声音、动画、活动影像等动态信息,无 论哪种形式的信息,现代计算机技术的发展,已经能很 方便地把这些信息转换成0、1组合的数字数据形式输入 计算机,进而由计算机进行存储、处理。本章将介绍计 数制及其相互转换、数值数据、非数值数据信息的表示
3)一个j进制数Nj按权展开的多项式和的一般
表达式 Nj=Kn-1· j^n-1 + Kn-2· j^n-2+……+ K1· j^1+ K0· j^0+ K-1· j^-1+……+K-m· j^-m 例如,十进制数345.27按权展开的多项式和的 一般表达式为: 345.27=3×10^2+4×10^1+5×10^0+2×10^1+7×10^-2 在上式中,10为基数,10^2、10^1、10^0、 10^-1、10^-2为各位上的位权。
4)十六进制 十六进制的基数为16,只有 0,1,2,3,4, 5,6,7,8,9,A,B,C,D,E,F共16个数 码(数字符号)。其中,A、B、C、D、E、F 分别表示10、11、12、13、14、15。进位计数 原则为“逢十六进一”。十六进制的权为以 16 为底的幂。
十六进制数的特点:用十六进制既可简化书写,
2.常见的几种进位计数制 1)十进制 十进制的基数为10,只有 0,1,2,3,4,5, 6,7,8,9,共10 个数码(数字符号)。进位 计数原则为“逢十进一”。十进制各位的位权是 以10为底的幂 。 2)二进制 二进制的基数为2,只有 0,1共2个数码(数 字符号)。进位计数原则为“逢二进一”。二进 制各位的权是以 2 为底的幂。 二进制数的特点: ①技术上容易实现
又便于记忆。
进制数的表示既可以用数字表示,也可以 用字母表示。 B——二进制 O——八进制 D——十进制 H——十六进制 注意,通常用Q表示八进制而不用字母O, 目的是为了避免将O字母误认为是数字0。在 表示十进制数时,数制符号(D或10)可以省 略。 例如:
十进制数23,可表示为23D或23 或23 二进制数110110.01,可表示为110110.01B或 110110.01
对应机器数为: N1=O.1001B,N2=1.1001B, N3=01001B, N4=11001B (2)机器数的有效值范围 机器数的数值范围,由计算机存放一个基 本信息单元长度的硬件电路所决定。 基本信息单元的二进制位数称为字长,若 字长为16位,所表示一个无符号整数范围为 0000H~FFFFH(十进制0~65535);若表 示一个带符号数,则最高位为符号位,其他 位表示数值,它所表示的整数范围为7FFFH~+7FFFH。
2 2
129 64
………………
余1 余0 余0 余0
最低位
………………
……………… ……………… ……………… ……………… ……………… ………………
2 32 2 16 2 2
8
4
余0
余0 余0 余1 最高位
2 2 2 1 0
把所得余数按箭头方向从高到低排列起来便 可得到:129=l0000001B
解 :
0010 1011 0011 0101 . 1010 0101 1100 1000 2 B 3 5 . A 5 C 8
B H
即得:10101100110101.1010010111001B=2B35.A5C8H 注意:别忘了在整数部分和小数部分之间加小数点。
2)十六进制转换成二进制数 其转换方法是把十六进制数的每位分别用四 位二进制数码表示,然后把它们连成一体。 例如: 将十六进制数1A7.4C5H转换成二进 制数。
1)数值的基数 一种进位计数制允许选用基本数字符号的个 数称为基数。 例如最常用的十进制数,每一位上只允许选 用0、1、2、3、4、5、6、7、8、9共10个不同 数码中的一个,则十进制的基数为10,每一位 计满10时向高位进1。 因此,在j进制中,基数为j,包含0、1、 2…j-1共j个不同的数字符号,每个数位计满j就 向高位进1,即“逢j进一”。
解: 把0.566743连续乘以l6,直到所得乘 积的小数部分达到所需精度为止,其过程如下:
0.566743 × 16
9.067888 0.067888 × 16 1.086208 0.086208 × 16 1.379328 ……………取整数部分:1 ……………取整数部分:9 最高位
……………取整数部分:1
最低位
即得:0.566743
0.911H
同理:对同时有整数和小数两部分的十进制数,其 转换成十六进制数的方法为:把它的整数和小数部分 分开转换后,再合并起来。但应注意别忘了在整数部 分和小数部分之间加小数点。
(3)二进制和十六进制数的转换
1)二进制数转换成十六进制数 其转换可采用“四位合一位法”。即:从 二进制数的小数点开始,向左或向右每四位为 一组,不足四位以0补足(整数部分不足4位, 左边补0;小数部分不足4位,右边补0),然 后分别把每组用十六进制数码表示,并按序相 连即可。 例如: 将10101100110101.1010010111001B 转换成十六进制数。