300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > day017:Java进制转换 原码反码补码 位运算 位移运算符

day017:Java进制转换 原码反码补码 位运算 位移运算符

时间:2019-01-11 21:30:55

相关推荐

day017:Java进制转换 原码反码补码 位运算 位移运算符

一、进制介绍:

1.进制:指进位制,表示某一位置上的数,运算时是逢X进一。

十进制就是逢十进一,二进制就是逢二进一,八进制就是逢八进一。

2.Java中默认的数值都是十进制,如果要输入其他进制,在数值前面加:

二进制:数值前面加0b

八进制:数值前面加0

十六进制:数值前面加0x

注:在Java中,即使在数值前面加了其他进制的标识,控制台输出的数据仍为十进制数据。

3.其他进制转换为十进制的方法:

例如,二进制转换为十进制:

十六进制转换为十进制:

八进制转为十进制的方法也如上。

4.十进制转为其他进制的方法:

十进制转二进制:

十进制转十六进制:

5.快速进制转换法

用8421码,又称BCD码。

例如:

二进制快速转十进制:

二进制快速转八进制:

(三个二进制位为一组)

二进制快速转十六进制:

(四个二进制位为一组)

(注:至于八进制与十六进制的转换,可先将八进制或十六进制先转换为二进制,再进行所需要的转换)

二、原码、补码、反码

1.原码、补码、反码介绍:

计算机中的数据,都是以二进制补码的形式进行运算,而补码是通过原码和反码推算出来的。

一个字节是八个二进制位。int为四个字节,即四组八个二进制位。

正数与负数的原码反码补码介绍:

把int类型的数值强转为byte类型时,精度损失问题:

三、位运算符

1.位运算符的介绍:位运算符指的是二进制位的运算,先将十进制数转为二进制数再进行运算。

2.在二进制位运算中,1表示true,0表示fales。

3. &: 位与 遇false则false(即遇0则0)

| : 位或 遇true则true (即遇1则1)

^ : 位异或 相同为false,不同为true

(注:一个值,被另一个值异或两次,该数本身不变。)例子如下:

~ : 取反 全部取反,0变1,1变0(包括符号位)。

四、位移运算符

1.<< :有符号左移运算,二进制位向左移动,左边符号位丢弃,右边补齐0。

运算规律:向左移动几位,就是乘以2的几次幂。

eg:System.out.println(12 << 1); 代表12向左移动1位,即12乘以2的一次幂,控制台输出24。

2.>>:有符号右移运算,二进制向右移动,使用符号位进行补位。

运算规律:向右移动几位,就是除以2的几次幂。

eg:System.out.println(3 >>1); 代表3向右移动1位,即3除以2的一次幂,控制台输出1。(因为int类型只能输出整数,小数不要)

3. >>> 无符号右移运算,无论符号位是0还是1,都补0。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。