2013年11月8日

java 将long类型的数值转无符号数

摘要: 由于JAVA中基本数据类型均为有符号数,而且最大数据类型long为8字节假如long为负数时,最高位为1,转为无符号数时会超出long的取值范围,所以转换规则如下:方法:public static final BigDecimal readUnsignedLong(long value) throws IOException {if (value >= 0)return new BigDecimal(value);long lowValue = value & 0x7fffffffffffffffL;return BigDecimal.valueOf(lowValue).add( 阅读全文

posted @ 2013-11-08 10:53 neil-zhao 阅读(16819) 评论(1) 推荐(1) 编辑

java 理解有符号数和无符号数

摘要: 转至:http://jinguo.iteye.com/blog/212049理解有符号数和无符号数负数在计算机中如何表示呢?这一点,你可能听过两种不同的回答。一种是教科书,它会告诉你:计算机用“补码”表示负数。可是有关“补码”的概念一说就得一节课,这一些我们需要在第6章中用一章的篇幅讲2进制的一切。再者,用“补码”表示负数,其实一种公式,公式的作用在于告诉你,想得问题的答案,应该如何计算。却并没有告诉你为什么用这个公式就可以和答案? 另一种是一些程序员告诉你的:用二进制数的最高位表示符号,最高位是0,表示正数,最高位是1,表示负数。这种说法本身没错,可是如果没有下文,那么它就是错的。至少它不能 阅读全文

posted @ 2013-11-08 10:29 neil-zhao 阅读(3366) 评论(0) 推荐(0) 编辑

导航