读书人

java基础四 位运算的一些例子

发布时间: 2012-09-06 10:37:01 作者: rapoo

java基础4 位运算的一些例子

package endual3;public class MainApp {/** * 位运算 * java语言支持整数类型的数据的位运算,位运算操作符包括: * 1.& -- 与运算,二元操作符号,对两个操作元的每个二进制位进行运算 *     运算规则是 :1 & 1 = 1; 1 & 0 = 0; 0 & 1 = 1; 0 & 0 = 0; * 2 ^ --异或运算,二元操作符,对两个操作元的每个二进制位进行异或的运算, *    运算规则:1^1 = 0; 1^0=1 ; 0^1 = 1; 0^0 = 0 * 3 |---或运算  , 二元操作符,对两个操作元的二进制的进行或运算 *    运算规则是: 1 | 1 = 1; 1^0 = 1; 0^1 = 1 ; 0^0 = 0 ; * 4 ^--取反运算 一元操作符,对操作元的每个二进制位进行取反运算, *    运算规则是:~1 = 0 ; ~0 = 1 ; * 5 >> --- 算术右移位运算,二元操作符 * 6 >>> -- 逻辑右移位运算,二元操作符 * 7 << ---算法左移位运算,二元操作符 *  */public static void main(String[] args) {// TODO Auto-generated method stub/** * 算术右移位操作符 >> * 操作符 >> 进行算法右移位运算,也称为带符号右移位运算 */int a1 = 12 >> 1 ;//变量a1的取值为6 ;//对12右移一位的过程中,舍弃了二进制数的最后的一位,在二进制数的开头添加以为符号位,//由于12是整数,因此在符号位上添加的是0 //00000000 00000000 00000000 0000110 0 ---->0 00000000 00000000 00000000 0000110int a2 = -12 >> 2 ; //变量a2的取值为3 ;//对于-12右边移动两位的过程中,舍弃二进制数的最后两位,在二进制的开头增加两位符号位,由于-12//是负整数,因此增加了两位符号位11,//11111111 11111111 11111111 111101 00 -->> 11 11111111 11111111 11111111 111101int a3 = 128 >> 2 ; //变量a3的取值为32 ;int a4 = 129 >> 2 ; //变量a4的取值为32 ;/** * 逻辑右移位操作符 * 操作符>>>是逻辑右移操作符,也称为不带符号右移操作符号,在移位的过程中,二进制数的开头增加的 * 位都是0 *  * 举例子不举了 *///左移位操作符 << /** * 操作符  << 执行左移位运算 *  * int a1 = 12 << 1 ; *  * 对于12左移以为的过程中,舍弃的是二进制数的开头一位,在二进制数的尾巴增加一位0 * * int a2 = -12 << 2 ; * 对于负数-12 ,操作的过程是 舍弃二进制数的开头两位,在二进制数的尾巴增加两位00 *  */}}
?

读书人网 >编程

热点推荐