计算机原理 计算机中数据的表示方法

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第二章计算机中数据的表示方法
第一节计算机中数据的分类和表示方法
计算机内部传送的信息分为两大类:控制信息和数据信息。

数据信息又分为两种,数值型数据和非数值型数据。

注意:任何数据在计算机中都是用二进制表示的。

一、数据的单位
1.位(bit):是计算机中最小的数据单位,常用小写字母b来表示。

2.字节(Byte):用大字母B来表示,1B=8b
表示文件的长度,衡量存储器的容量,存储器编址用字节做单位。

磁盘的存储单位是:簇
磁盘存放信息的最小编址单位是:扇区
信息编码的的最小单位是:码元
3.字(word):由若干字节组成,是字节的整数倍。

在计算机内部进行数据传送,或CPU进行数据处理时,用它作基本单位。

字的长度即字长,并不是所有的计算机字长都一样,常见的字长有16位,32位,64位。

字长是CPU一次能够处理二进制的位数。

字长越长,计算机速度越快,精度越高。

4.常用的存储单位之间的换算
1TB=1024GB 1GB=1024MB 1MB=1024KB 1KB=1024B 210 1B=8b
二、数据的分类
1.按数据处理方式分类
数值型和非数值型
非数值型又分为:字符数据和逻辑数据
2.按数据传输形式分类
数字数据和模拟数据
数字数据:离散型的;模拟数据:连续的值
模拟数据被数字化后存入计算机,采用模数转化将模拟数据数字化后存入计算机。

三、数据的表示方法
1.数值型数据的表示
(1)按小数点的处理可分为定点数和浮点数。

(2)按符号位有原码、补码,反码三种形式的机器数
2.非数值型数据的表示
第二节各种数制及其转换方法
一、数制的组成
数制是指计数的方法,任何一种数制都有两个要素:基数和权。

例如二进制数1001.01,它的基数是2,最左边1的权是23,最右边的1的权是2-2。

234二、常用字的数制
二进制(B),八进制(Q),十进制(D),十六进制(H)
三、不同进制之间的转换
1.十进制转换成非十进制
分成整数部分和小数部分:
整数部分:除基数倒取余
小数部分:乘基数取整
注意:
十进制数转换在二进制数的方法是除2倒取余。

(×)
任何一个十进制数都可以很精确的转换成二进制。

(×)
2.非十进制转换成十进制
方法:按位权展开求和法。

145Q=1*82+4*81+5*80=64+32+5=101
3.二进制,八进制,十六进制之间的转换
二进制<-->八进制,二进制每3位和八进制1位相对应;
二进制<-->十六进制,二进制每4位和十六进制1位相对应;
八进制和十六进制如何转换呢?通过二进制。

注意:整数部分不足位需要最前面补0,小数部分不足位,需要后面补0
第三节原码、反码、补码的概念
数值型数据的表示按小数点处理可分为:定点数和浮点数
机器数:原码,反码,补码(有符号数)
无符号数:通常用于表示存储器的地址
一、数的定点与浮点表示
1.定点数
小数点位置固定不变,小数点在符号位之后,数值最高位之前,称之为定点小数;小数点固定在最后数值位之后,称之为定点整数。

小数点本身是隐藏的,是不显示出来的。

缺点:只能表示定点整数或定点小数。

2.浮点数
(1)浮点数在计算机中格式:如果字长确定的情况,阶码位数多了,尾数位数就会少。

(2)关于浮点数的几点说明:
✓计算机中,阶码部分用定点整数补码形式表示,尾数部分用定点小数补码形式表示。

✓阶码的位数决定浮点数的大小的范围,尾数的位数决定了浮点数的精度。

✓浮点数的尾数在计算机中采用规格化数,0.5<=|S|<1
✓判断计算机内一个浮点数是否为规格化的浮点数的方法:尾数的最高数值位与符号位是否相反。

✓两个浮点数进行运算时,要先对阶,规则是小阶向大阶看齐。

3.定点数与浮点表示法的比较
✓相同字长,浮点数表示的范围比定点数大。

✓相同字长,定点数表示时,精度比浮点数高。

✓浮点数运算比定点数复杂。

✓浮点数表示所需要的设备量比定点数表示所有的设备多。

✓在微机内部,一般采用定点表示法。

二、原码、反码、补码
1.机器数与真值
真值:用“+”或“-”号表示的二进制数。

机器数:将数的正负用“0”和“1”来表示,“0”表示正,“1”表示负,常讲的有原码、反码和补码三种。

2.原码、反码、补码
(1)概念
原码:最高位使用0或1表示符号,其余位是真值本身。

反码:最高位使用0或1表示符号,如果是正数,其余位是真值就是真值,如果是负数,其余位是真值各位取反。

补码:最高位使用0或1表示符号,如果是正数,其余位是真值就是真值,如果是负数,其余位是真值各位取反末位加1。

(2)转换方法
如果是正数,原码、反码、补码是一样的,如果是负数,反码把原码符号位除外,各位取反;补码把原码符号位除外,各位取反,再加1。

8位定点整数原码补码、反码、补码
注意:
对于一个正数而言,原码、反码和补码是一样的。

补码的正0和负0一样,原码和反码不一样。

已知补码转换成原码的方法是,对补码再算一次补码。

如果要计算机器数的真值,必须将该机器数转换成原码才能计算其真值。

机器数相同,所对应的真值并不一定相同,还得看它表示的是原码?反码?还是补码?
8位定点整数和小数原码、反码、补码的表示范围:
n位定点整数和小数原码、反码、补码的表示范围(指数形式):
三、算术运算
计算机中的算术运算一般可采用补码进行,用补码表示的两个数在进行算术运算时,符号位可直接参与运算,结果仍为补码。

1.定点补码加法运算
运算规则:[X+Y]补=[X]补+[Y]补
2.定点补码减法运算
运算规则:[X-Y]补=[X]补+[-Y]补
已知[Y]补,求[-Y]补:(不分正负数)将机器数所有位,按位取反,末位加1。

(区别:已知[Y]原,求[Y]补:如果是正数,补码就是原码;如果是负数,其余位是真值各位取反末位加1。

)3.定点补码运算溢出的处理
采用补码运算时若结果的数值超出了补码表示的范围,则此种情况称为溢出。

计算机会出现溢出最根本的原因是机器计算位数不够表示数的大小。

若计算结果比能表示的是大数还大,称为上溢出,上溢出一般作溢出中断处理。

若计算结果比能表示的是小数还小,称为下溢出,下溢出一般作机器零处理。

采用双符号位来判断是否溢出:
C S+1C S为11和00时不溢出,为10时为负溢出,为01时为正溢出。

例:[X]补=10011100,[Y]补=10011000,计算[X+Y]补=
4.不带符号的数的运算
也是我们讲的无符号数,没有符号位,所有二进制位都用来表示数的大小。

以8位二进制来举例:00000000~11111111(0~255)
无符号数的加法运算即两个正数相加,结果在表示范围内时,结果为正数。

无符号数的减法运算需要把两个数相减,符号取决于被减数和减数的大小。

地址在计算机中用无符号数(unsigned)表示的。

相关文档
最新文档