本文目录一览:
java语句中116和78进行与运算等于多少?
结果:11678=68。
与运算是对数值的二进制进行计算的。
首先分别计算出116和78的二进制数,然后进行与运算。
与运算规则:有0则0,全1为1。
java 与运算 和 short类型
1、java 与运算:
和 相同点:
都表示“与”操作。这里的“与”和数学中的“与或非”中的“与”意义相同,都遵循“一假必假”原则。即“与”符号两边的元素只要有一个为假,"与"操作执行后的结果就为假。
和 的区别:
1) 表示“按位与",这里的”位“是指二进制位(bit)。
例:十进制数字8 转化为二进制是:1000 ;数字9 转化为二进制是1001 。
则如有以下程序:
public class Test {
public static void main(String[] args) {
System.out.println(9 8);
}
}
输出结果应该是:8
原因:1001 1000 = 1000 。 计算机中一般1表示真,0表示假。最左边一位11=1,最右边一位10 = 0.
2) 表示逻辑”与“ ,即java中的boolean值才可以存在于符号的左右两侧。
true false = false ,true true = true , 依旧是"一假必假"。
值的注意的是: 符号有所谓的“短路原则”,当 A B 出现时,如果A经判断是假,那么B表达式将不会获得执行或被判断的机会。直接结果就为假。
注:关于十进制与二进制的转换,简单的说每四位可以遵循”8421“原则,1001即8+1=9,1011即8+2+1=11
2、shot(短整型)是16bit长的带符号整数,范围是-32768~32767。
java中的(或运算,异或运算,与运算)解释下
java中或运算、异或运算、与运算的使用实例和解释如下:
public class Test { public static void main(String[] args) {
// 1、左移( )
// 0000 0000 0000 0000 0000 0000 0000 0101 然后左移2位后,低位补0:
// // 0000 0000 0000 0000 0000 0000 0001 0100 换算成10进制为20 System.out.println(5 2);// 运行结果是20
// 2、右移( ) 高位补符号位
// 0000 0000 0000 0000 0000 0000 0000 0101 然后右移2位,高位补0:
// 0000 0000 0000 0000 0000 0000 0000 0001
System.out.println(5 2);// 运行结果是1
// 3、无符号右移( ) 高位补0
// 例如 -5换算成二进制后为:0101 取反加1为1011
// 1111 1111 1111 1111 1111 1111 1111 1011 /
/ 我们分别对5进行右移3位、 -5进行右移3位和无符号右移3位:
System.out.println(5 3);// 结果是0
System.out.println(-5 3);// 结果是-1
System.out.println(-5 3);// 结果是536870911
// 4、位与( )
// 位与:第一个操作数的的第n位于第二个操作数的第n位如果都是1,那么结果的第n为也为1,否则为0
System.out.println(5 3);// 结果为1
System.out.println(4 1);// 结果为0
// 5、位或( | )
// 第一个操作数的的第n位于第二个操作数的第n位 只要有一个是1,那么结果的第n为也为1,否则为0
System.out.println(5 | 3);// 结果为7
// 6、位异或( ^ )
// 第一个操作数的的第n位于第二个操作数的第n位 相反,那么结果的第n为也为1,否则为0
System.out.println(5 ^ 3);//结果为6
// 7、位非( ~ ) // 操作数的第n位为1,那么结果的第n位为0,反之。 System.out.println(~5);// 结果为-6 } }
java的与运算
在java中,设计int和比int位数来的小的类型,如byte,char等,都是先把小类型扩展成int再来运算,
byte b=-64
-64 的原码 11000000
反码 10111111
补码 11000000
b的整型值在扩展时最左边一位是符号位1,扩展后就是11111111 11000000
而b255,这里255是整型,其值是00000000 11111111,与操作的结果是00000000 11000000