- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C语言之计算机基础学习资料二
C语言之计算机基础学习资料二
机器数与真值
机器数及其编码
机器数就是数值在计算机中的表示形式,真值则是它在现实中的实际数值。可以这样简单的理解。因为计算机只能直接识别和处理用0、1两种状态的二进制形式的数据,所以在计算机中无法按人们的日常书写习惯用正、负符号加绝对值来表示数值,而与数字一样采用二进制代码0和1来表示正、负号。这样在计算机中表示带符号的数值数据时,符号和数均采用了0、1进行了代码化。这种采用二进制表示形式,连同正负符号一起代码化的数据,称为机器数或者机器码(即,数值在计算机中的二进制表示形式)。与机器数对应,用正、负符号加绝对值来表示的实际数值称为真值。
根据约定机器数是否存在符号位,机器数可以分为无符号数和带符号数。无符号数是指计算机字长的所有二进制位均表示数值。带符号数是指机器数分为符号位和数值两部分,且均采用二进制表示。一般约定最高位表示符号。
例1-1为无符号定点整数时,真值是153;作为带符号定点整数时,第一位是符号位,1代表负号,二进制真值是-0011001,转化成十进制是-25。
对于带符号数,根据小数点位置固定与否,又可以分为定点数和浮点数。在介绍浮点数之前我们要将注意力完全放在定点数上面,要有点耐心,对定点数的理解程度决定了我们对浮点数的理解程度,因为可以将浮点数看成是对定点数的一种应用,以后就会明白了。好了,先看一看什么是定点数。
定点数约定所有数据的小数点位置均是相同且固定不变的。计算机中通常使用的定点数有定点小数和定点整数两类。
定点小数:对于一个长度为n位的机器数,定点小数约定小数点在符号位和最高数值位之间,如下
数符(最高位,占用1位).?尾数(剩余n-1位)
小数点只是一个约定,是隐含的,不占用空间。
定点整数:对于一个长度为n位的机器数,定点整数约定小数点在最低数值位之后,如下
数符(最高位,占用1位)尾数(剩余n-1位).
小数点也是隐含的。
例1-2:下的八位二进制数,我们看看它们所代表的值是多少
定点小数:1.1011001??????真值=-0.1011001=-0.6953125
定点整数??????真值=-1011001=-89
真值:127=+1111111???????定点整数真值:-0.125=-0.001??????定点小数:1.0010000
机器数与真值
机器只认识二进制数:0、1。
这是因为,电路状态常有两个,如通、断;高电平、低电平;…可用0、1表示。
这种0、1、0、1…1在机器中的表现形式——机器数。一般为8位。
无符号数、…即00H ~ FFH
机器数有:
带符号数:+1010110B、-1101001 真值
11101001 机器数
机器数的编码及运算
对带符号数而言,有原码、反码、补码之分,计算机内一般使用补码。
原码
将数“数码化”,原数前“+”用0表示,原数前“-”用1表示,数值部分为该数本身,这样的机器数叫原码。
设X——原数;则[X]原 = X(X0)
[X]原 = 2n-1 – X (X0),n为字长的位数。
如,[+3]原 =
[-3]原 = 27 - (-3) =
0有两种表示方法 +0
-0
原码最大、最小的表示:+127、-127
反码
规定正数的反码等于原码;负数的反码是将原码的数值位各位取反。
[X]反 = X (X0)
[X]反 =(2n –1)+ X (X0)
如,[+4]反 = [+4]原 =B
[-4]反 = (28 –1)+(-4) ==B
反码范围:-127 ~ +127
两个0; +0 ——B
-0 ——B
补码
补码的概念:现在是下午3点,手表停在12点,可正拨3点,也可倒拨9点。即是说-9的操作可用+3来实现,在12点里:3、-9互为补码。
运用补码可使减法变成加法。
规定:正数的补码等于原码。
负数的补码求法:1)反码 + 1
2)公式:[X]补 = 2n + X (X0)
如,设X = - 0101110 B , 则[X]原 =B
则[X]补 = [X]反 + 1 =+
文档评论(0)