java二进制

1、原码:15 的原码是00000000 00000000 00000000 00001111;

2、反码:15 的反码是11111111 11111111 11111111 11110000;(反码就是原码去翻)

3、补码:15 的补码是11111111 11111111 11111111 11110001;(补码 = 反码+ 1)

-15 = 15的补码 = 15的反码 + 1;

例子:计算 11111111 11111111 11111111 10010001的值:

1、可知这是一个负数;

2、将其-1,得到该数相反数的反码:11111111 11111111 11111111 10010000;

3、取反码得到相反数的原码:00000000 00000000 00000000 01101111 ==》 1+2+4+8+0+32+64 = 111;

4、取相反数得到该数字是-111;

时间: 2024-10-06 06:24:21

java二进制的相关文章

(转)Java二进制指令代码解析

转自http://www.blogjava.net/DLevin/archive/2011/09/13/358497.html Java二进制指令代码解析 Java源码在运行之前都要编译成为字节码格式(如.class文件),然后由ClassLoader将字节码载入运行.在字节码文件中,指令代码只是其中的一部分,里面还记录了字节码文件的编译版本.常量池.访问权限.所有成员变量和成员方法等信息(详见Java字节码格式详解).本文主要简单介绍不同Java指令的功能以及在代码中如何解析二进制指令. Ja

Java二进制指令代码解析

http://www.blogjava.net/DLevin/archive/2011/09/13/358497.html http://blog.csdn.net/sum_rain/article/details/39892219 http://www.blogjava.net/DLevin/archive/2011/09/13/358497.html Java二进制指令代码解析 小注:去年在看<深入解析JVM>书的时候做的一些记录,同时参考了<Java虚拟机规范>.只是对指令的

java中Integer包装类的详细讲解(java二进制操作,所有进制转换)

程序员都很懒,你懂的! 今天为大家分享的是Integer这个包装类.在现实开发中,我们往往需要操作Integer,或者各种进制的转换等等.我今天就为大家详细讲解一下Integer的使用吧.看代码: package com.herman.test; public class IntegerTest { public static void main(String[] args) { System.out.println("Integer中的常量***************************

Java 二进制表示整负数算法

计算机对有符号数(包括浮点数)的表示有三种方法:原码.反码和补码, 补码=反码+1.在 二进制里,是 用 0和 1 来表示正负的,最高位为符号位,最高位为 1 代表负数,最高位为 0 代表正数. 以java中8位的byte为例,最大值为:0111 1111(127),最小值为1000 0001(-128). 那么根据十进制的数字,我们如何转换为二进制呢?对于正数我们直接转换即可. 对于负数则有一个过程,那么已负(-128)为例: 1:先将-128的绝对值转换成二进制,即为:1111 1111 2

Java 二进制与十六进制转换

Java 二进制与十六进制转换 二进制转换十六进制 /** * @description 将二进制转换成16进制 * * @param buf * @return */ public static String parseByte2HexStr(byte buf[]) { StringBuffer sb = new StringBuffer(); for (int i = 0; i < buf.length; i++) { String hex = Integer.toHexString(buf

java 二进制流转换为图片

import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import sun.misc.BASE64Decoder; public String getPicFromStreams() {         String str ;//存放二进制的流                 BASE64Decoder decoder=new BASE64Decoder();           by

Java 二进制,八进制,十进制,十六进制转换

/** * Java 二进制,八进制,十进制,十六进制转换 */ public class App { public static void main( String[] args ) { int i = 192; System.out.println("---------------------------------"); System.out.println("十进制转二进制:" + Integer.toBinaryString(i)); System.out

Java二进制兼容性原理

一.概述 现在的软件越来越依赖于不同厂商.作者开发的共享组件,组件管理也变得越来越重要.在这方面,一个极其重要的问题是类的不同版本的二进制兼容性,即一个类改变时,新版的类是否可以直接替换原来的类,却不至于损坏其他由不同厂商.作者开发的依赖于该类的组件? Java二进制兼容性概念的主要目标是推动Internet上软件的广泛重用,同时它还避免了大多数C++环境面临的基础类脆弱性问题--例如,在C++中,对域(数据成员或实例变量)的访问被编译成相对于对象起始位置的偏移量,在编译时就确定,如果类加入了新

【编程之美】java二进制实现重建

package com.cn.binarytree.utils; /** * @author 刘利娟 [email protected] * @version 创建时间:2014年7月20日 下午2:03:30 类说明: */ class Node { Node left; Node right; char chValue; Node(char chValue) { left = null; right = null; this.chValue = chValue; } } public cla

java中Integer包装类的具体解说(java二进制操作,全部进制转换)

程序猿都非常懒,你懂的! 今天为大家分享的是Integer这个包装类.在现实开发中,我们往往须要操作Integer,或者各种进制的转换等等.我今天就为大家具体解说一下Integer的使用吧.看代码: package com.herman.test; public class IntegerTest { public static void main(String[] args) { System.out.println("Integer中的常量**************************