java 位操作的总结

2014-05-07 17:14 今天工作上需要一个Byte的低5位,高3位。所以查询了资料。总结下如何实现

百度到一个资料:

介绍的很详细

http://www.blogjava.net/zhaomingchao/articles/298318.html

这里就写下代码,来实现他的实例。

工程的位置 :

截图如下:

java 位操作的总结,布布扣,bubuko.com

时间: 2024-10-12 02:34:03

java 位操作的总结的相关文章

java 位操作 bitwise(按位) operation bit

java 位操作 bitwise(按位) operation bit // 8   0000 0000 0000 1000     原码     1111 1111 1111 0111     反码 +  1 1111 1111 1111 1000     (8的补码)来表示 -8 // -8 1111 1111 1111 1000 65528     补码(正值 的反码+1) // 65535 1111 1111 1111 1111 65535// 65535-65528=7+1=8 操作lo

JAVA 位操作学习

一,基础知识 计算机中数值的编码方式中,原码.反码.补码. 正数的补码与原码相同,负数的补码为:负数的原码符号位不变,其它位取反,再加1. 在计算机中,数值是以补码的形式存储的.补码的好处: ①用补码存储可以减化电路设计,因为它可以将减法转换成加法,简化运算规则,将加减法统一起来了. ②还可以不用考虑符号位,解决了0的两种表示方式:比如,在原码中0的表示有 +0 和 -0 +0=[0000 0000 0000 0000 0000 0000 0000 0000]原 -0=[1000 0000 00

Java位操作全面总结

在计算机中所有数据都是以二进制的形式储存的.位运算其实就是直接对在内存中的二进制数据进行操作,因此处理数据的速度非常快.在实际编程中,如果能巧妙运用位操作,完全可以达到四两拨千斤的效果,正因为位操作的这些优点,所以位操作在各大IT公司的笔试面试中一直是个热点问题. 位操作基础 基本的位操作符有与.或.异或.取反.左移.右移这6种,它们的运算规则如下所示: 注意以下几点: 在这6种操作符,只有~取反是单目操作符,其它5种都是双目操作符. 位操作只能用于整形数据,对float和double类型进行位

Java 位操作

Java提供的位运算符有:左移( << ).右移( >> ) .无符号右移( >>> ) .位与( & ) .位或( | ).位非( ~ ).位异或( ^ ),除了位非( ~ )是一元操作符外,其它的都是二元操作符. print Binary: System.out.printIn(Integer.toBinaryString(2)); //result is 10. 1.左移( << ) Test1.将5左移2位: package com.x

java位操作总结

在计算机中所有数据都是以二进制的形式储存的. 位运算其实就是直接对在内存中的二进制数据进行操作,因此处理数据的速度非常快. 方便演示,首先写个二进制打印方法: private static void printNum(int n){ String num = Integer.toBinaryString(n); if(num.length() == 32){ System.out.println(num); }else{ StringBuilder sb = new StringBuilder(

java位操作

在搞与c的协议解析的时候,要进行很多的位运算.因为位运算,实际编程中用的不多,这里还是记录一下. c协议过来的数据是16进制的字符串. 首先是将16进制的字符串转换为ByteBuffer. public static ByteBuffer string2Buffer(String source) { ByteBuffer buffer = ByteBuffer.allocate(source.length() / 2); for (int idx = 0; idx < buffer.capaci

java中的位操作

之前做项目的时候使用位操作不是很多,今天在刷leetcode上题目的时候用到了位操作,是leetcode中的第29题Divide Two Integers. 一.java的位操作: 位运算表达式由操作数和位运算符组成,实现对整数类型的二进制数进行位运算.位运算符可以分为逻辑运算符(包括~.&.|和^)及移位运算符(包括>>.<<和>>>). 1)左移位运算符(<<)能将运算符左边的运算对象向左移动运算符右侧指定的位数(在低位补0).左移一位(在

java的位运算符(&gt;&gt;,&lt;&lt;,&gt;&gt;&gt;,&amp;,|)

主要总结下java的位运算符的操作.java的位运算符不紧可以提高运行效率,同时也有会意想不到的效果(java.util.ArrayDeque有很好的体现),在后续中会举例说明. 开始说位运算符之前,先简单的复习下补码的知识,然后举个简单的例子说明下计算机中的补码操作(计算机中的加减法). 补码 计算机进行加减法操作时,都是以补码进行操作的,所以java中的位运算都是以补码进行操作的.正数的补码是其本身,而负数的补码为其反码+1.如下例子. 因为java中int型是4个字节,需要32位,为了写起

Google Protocol Buffers 编码(Encoding)

Google Protocol Buffers 编码(Encoding) 1. 概述 前三篇文章<Google Protocol Buffers 概述><Google Protocol Buffers 入门><Protocol Buffers 语法指南> 一步一步将大家带入Protocol Buffers的世界,我们已经基本能够使用Protocol Buffers生成代码,编码,解析,输出级读入序列化数据.该篇主要讲述PB message的底层二进制格式.不了解该部分内