ShopJsp 最专业权威的商城系统提供商,最适合二次开发的商城系统! 快速联系通道    电话:010-62910181  手机:18611625933   QQ:94367128

java中负数类型转换

2015-12-16  来源:华宇盈通

学习过java的都知道,在java中,不是直观的表示负数,而是采用补码的形式表示负数。这样我们就需要对负数进行一定的处理才能够进行使用,这样做不但能够使硬件的操作更加的方便,同样的也把减法换成了加法来运算,这样我们需要进行一定补码。这个补码怎么表示,我们应该怎样的引入补码呢?

数据类型转换

对于正数来说,他的反补码就是器本身,如果你不知道这是为什么,可以去这样的理解一下:反补码就是为了解决减法的问题,正数本身不存在这样的问题,因此我们给正数添加反补码就是器自己本身。在有符号的数据库中,最高位0表示正数,最高位1表示负数,对于附属来讲,他的反码就是出去发符号位去翻,然后加1就得到了它的补码。

以下我们举例子来进行解释:

一个byte型数据,它在计算机中占8位,-7可以表示为10000111,最高位的1代表负号,它的反码是除去符号位各位取反为11111000,然后加1得到补码11111001。

8的二进制表示为00001000,现在我们运算8 - 7,在计算机并不是用8减去7,而是用8 + (-7),也就是用00001000加上-7的补码11111001,两个有符号数相加,如果符号位相加有近位就删去符号位的进位,得到00000001,也就是1.

java中我们经常也会遇到不同数据类型的转换,这是最容易出错的地方。

关于负数类型转换的内容就是以上的这些,还有一些深奥的知识我们在以后的内容中在给大家做分享,希望以上的内容对你有一定的帮助。

 
在线咨询