- 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文档。上传文档
查看更多
Java中的数值数据-原码-反码-补码-数据类型和范围-字面量
HYPERLINK http://383984216-/blog/1343637 Java中的数值数据、原码、反码、补码、数据类型及范围、字面量
HYPERLINK http://383984216-/category/171041 java基础
HYPERLINK /blogs/tag/java java HYPERLINK /blogs/tag/%E8%A1%A5%E7%A0%81 补码 HYPERLINK /blogs/tag/%E8%8C%83%E5%9B%B4 范围 HYPERLINK /blogs/tag/%E5%AD%97%E9%9D%A2%E9%87%8F 字面量 HYPERLINK /blogs/tag/%E6%95%B0%E6%8D%AE%E7%B1%BB%E5%9E%8B 数据类型?
一、数据在计算机中的表示 数据分为两种,一种是数值型数据,另一种是非数值型数据。这里只讨论数值型数据。 首先声明: 1、无论是二进制、八进制、十六进制还是十进制,大家都是一样的,十进制有的,其他进制也有。例如它们都有正负数之分,都有整数小数部分。 2、特别小心二进制数,所有的数据在计算机中都是用0和1的组合表示的,也可以说是二进制,但不是二进制数。一个二进制数在计算机中的表示是以这个二进制数的补码形式表示的,由于二进制数可能是正数、负数、小数,所以它的补码可能会跟这个二进制数不相同。这样说,可能听起来有点意思,一个二进制数用二进制表示。 数值在计算机中的表示需要考虑的三个问题 1、存储长度:计算机存储数据是以字节为单位的,一个字节有8位。程序语言中int型有2个字节的,也有4个字节的。还有char 2、符号:数据有正负之分,约定“0”表示正,“1”表示负。 3、数据的表示。如果数据以有无小数的方式来分,则分为整数,纯小数,大于1的小数。表示方法可分为定点和浮点表示法。定点表示方法又可分为定点整数和定点小数。如果一个数是整数就用定点整数表示,如果是一个小于1的小数就用定点小数表示,如果是个大于1的小数,就是说既有整数部分,又有小数部分就用浮点表示。也就是说定点整数法表示整数,定点小数法表示纯小数,浮点法表示大于1的小数(小数定义:有小数点的数)。这样说来程序设计语言中float型的数据在计算机中的表示可能是用定点小数法,也可能用浮点法了,事实真的是这样吗?我不知道。浮点表示法也可以表示纯小数,那么还要定点小数法干嘛呢?因为定点小数法简单,便于运算。 4、浮点表示法:源自于科学表示形式,将一个数存储时分为两部分,指数部分和一个小于1 的小数部分。如果一个浮点数用4个字节表示,则指数部分占用一个字节,小数部分占用3个字节,小数部分最高位表示正负号。而且指数部分在高位。 5、原码、反码和补码。计算机是以补码的形式表示数值型数据的。正数的原码、反码、补码都是一样的。其实反码、补码的提出就是针对负数的,跟正数屁关系没有。也许只是为了统一一下说法“计算机都是以补码的形式表示数据的”,不然就得说正数是用原码表示,负数时用补码表示。 6、补码。负数在计算机中的表示步骤:原码——反码(符号位不变)——补码(加1)。由补码计算出负数真值的方法有两种。一是,补码减1——取反(符号位不变)——原码;二是,补码——取反后加1——原码。所有的取反都不涉及符号位。 记住计算机中一个二进制数是以其补码形式表示的,下面会有介绍。 二、计算机中的数制 1.几种数制 a. 十进制数:编程时使用,默认数字就是十进制 b. 二进制数:计算机内部信息存储,运算, 输出都是二进制数,源代码无法写出。 c. 八进制数:源代码中用0XX表示,如013,07723,0271。 d. 十六进制数:源代码中用0xXX表示,如0x13f,0xf2ea,0xac,字母不分大小写. 2.数值转换 几种进制数之间的转换方法: 三、有符号数 计算机只能识别0和1组成的数或代码,所以有符号数的符号也只能用0和1来表示。 真值、机器数和字长的概念 ?? 真值:一个数的数值. ??????? 用+表示正数,用-表示负数 表示正数, 如:+101 -101 ?? 机器数:计算机中用来表示有符号数的二进制数 ??????? 首位为符号位,为0表示+,为1表示-,如0XXXXXXX 1XXXXXXX ?? 字长:包括符号位在内,一个二进制数占有的位数。 ??????? 字长n=8的二进制,符号位占1位,数值部分占7位。 由于数值部分的表示方法不同, 有符号数可有三种表示方法 , 即机器数有三种形式 , 分别叫 做原码,反码和补码. 四、原码、反码、补码详细介绍
文档评论(0)