java反码补码原码作用_java原码补码反码关系解析
本文为大家解析了java原码补码反码的关系,供大家参考,具体内容如下
原码:不管源数据是十进制还是十六进制,统统将数字转成二进制形式
反码:把原码的二进制统统反过来,0变成1,1变成0
补码:负数的反码加1,就是负数的补码
例子1:
十进制整数 -5,-5的原码101,-5的反码1,010,-5的补码1,011,
所以,-5的反码是-2,-5的补码是-3,其中前面的"1,",表示正数负数
例子2:
十六进制 -ff9B
原码 11111111111110011011
反码 00000000000001100100 十进制100
补码 00000000000001100100 十进制101
原来正确的操作流程是,把16进制ff9B转成2进制,然后直接反码,再算补码,就是温度数据
代码验证:
package comtest.example.admin.znum;
/**
* Created by wrs on 2019/6/5,16:25
* projectName: Testz
* packageName: comtest.example.admin.znum
* 输入一个真值(整数)求它的原码,反码,补码
*/
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
System.out.println("True value--> original code");
System.out.println("Please enter an integer!!!!!");
Scanner sc = new Scanner(System.in);
int value = sc.nextInt();
StringBuilder syuan = new StringBuilder();
if (value > 0) {
String Bvalue = Integer.toBinaryString(value);//将一个整数转换成字符串类型的二进制数
int n = Bvalue.length(); //二进制的数字的个数n
syuan.append("0,");
syuan.append(Bvalue);
System.out.println("Original code " + syuan); //原码
System.out.println("Complement code " + syuan); //补码
System.out.println("Inverse code " + syuan); //反码
// System.out.println("二进制数的n "+n);
} else if (value < 0) {
int value2 = Math.abs(value); //负数的绝对值
int value3 = value2 - 1; //减一求反,求补码
String Bvalue = Integer.toBinaryString(value2);
String BFvalue = Integer.toBinaryString(~value2);
int n = Bvalue.length();
String str = BFvalue.substring(BFvalue.length() - n); //截取反码的后几个数
syuan.append("1,");
syuan.append(Bvalue);
System.out.println("Original code is :" + syuan);
System.out.println("Inverse code is :1," + str);
String BBvalue = Integer.toBinaryString(~value3);
String str3 = BBvalue.substring(BFvalue.length() - n);
System.out.println("Complement code is :1," + str3);
} else {
System.out.println("0 Original code is not only");
System.out.println("[+0]riginal code 00.....0");
System.out.println("[-0]riginal code 10.....0");
System.out.println("--------------------------------------------");
System.out.println("0 Complement code is not only");
System.out.println("[+0]和[-0] Complement code 00.....0");
System.out.println("---------------------------------------------");
System.out.println("0 Inverse code is not only");
System.out.println("[+0]Inverse code00..........0");
System.out.println("[-0]Inverse code11..........1");
}
System.out.println("-------------------------------------------------");
}
}
运行效果:
-------------------------------------------------
True value--> original code
Please enter an integer!!!!!
-65435
Original code is :1,1111111110011011
Inverse code is :1,0000000001100100
Complement code is :1,0000000001100101
-------------------------------------------------
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
时间: 2020-02-02
java反码补码原码作用_java原码补码反码关系解析相关推荐
- java中输出时 什么作用_JAVA中输入和输出处理(Java I/O)重点总结
文件-使用File类操作文件: 什么是文件? 文件可认为是相关记录或放在一起的数据的集合. 文件一般存储在哪里? 储存在存储设备里. Java程序如何访问文件? Java API:java.io ...
- java线程池有什么作用_java线程池的作用是什么?线程池介绍
你知道java中线程池的作用是什么吗?那么究竟什么是线程池呢?都有哪些类型呢?让我们对以上的问题来进行详细的了解吧. 一.java线程池作用 第一个我们先来对它的作用进行一下简单的介绍,使用线程池的优 ...
- java环境变量classpath的作用_JAVA环境变量中 classpath、path、JAVA_HOME的作用
.................................................................................................... ...
- java 字节码分析_Java 字节码实践 - 解读
最近刚看完 深入理解 Java 虚拟机 一书中的第 6 章 (类文件结构),便迫不及待地自己写一个小的 Demo,来自己分析一把 Java 源文件经过编译之后成为字节码文件到底是个什么东西?先由一个简 ...
- java中math类的作用_Java开发知识之Java的数字处理类Math类
Java开发知识之Java的数字处理类Math类 一丶Java.text.DecimalFormat类与NumberFormat类 首先 Java.text.DecimalFormat指的是Decim ...
- java 代码配置 网络调试助手_java源码:网络调试助手
[实例简介] [实例截图] [核心代码] package com.hsw.u11.netassist.view; import java.awt.GridLayout; import java.awt ...
- java方法后面throw的作用_Java异常处理中throw与throws的用法区别
前言 说到异常,我们当然会想到try catch finally.当然如果用这个的话,被try块包围的代码说明这段代码可能会发生异常,一旦发生异常,异常便会被catch捕获到,然后需要在catch块中 ...
- java中的码点_Java中码点和码点单元 码点与字符串的互化
码点,就是某个任意字符在Unicode编码表中对应的代码值 代码单元:是在计算机中用来表示码点的,大部分码点只需要一个代码单元表示,但是有一些是需要两个代码单元表示的. 遍历一个字符串,依次将每一个码 ...
- java 装箱 拆箱的作用_Java中的装箱拆箱
一) 装箱与拆箱 Java中有概念是一切皆对象,因为所有的类都默认继承自Object.但是,对于数据类型是个例外,如short,int,long,float,double, byte,char,bo ...
最新文章
- 【记录】 安装qflow on ubuntu 16.04
- [Android]生成heap dump文件(.hprof)
- alipay html5 app,H5App支付宝开发详解
- tp5.1升级指导---控制器调整 _initialize方法更改为initialize
- Python文件拷贝函数
- java五子棋判断_JAVA 五子棋 判断输赢的代码实现
- 【3】docker-compose
- echarts map
- eigen 矩阵求逆_「伴随矩阵」Eigen库 矩阵基本操作:转置矩阵,逆矩阵,伴随矩阵,特征值 - seo实验室...
- python中如何判断词性_Python自然语言处理 5 分类和标注词汇
- 手动卸数+传输文件+入库
- 流量之战:阿里150亿入股分众,到底为哪般?
- 中国建设银行信息技术岗笔试
- 一种留存分析的方案:Cohort Analysis
- 互联网公司平均薪资Top8 , 阿里勇夺第一。
- 基于stm32和ESP8266实现wifi模块smartlink功能以及TCP连接
- xxx.pth或者xxx.pt is a zip archive(did you mean to use torch.jit.load()?问题解决
- SEO 行业怎么了?
- 描述计算机组装配置单,细说组装电脑配置清单最新介绍
- 显示桌面图标没有怎么解决
热门文章
- 边结点结构体的定义及使用
- UITextField 详解
- SHELL学习——退出状态、测试(整数\字符串\ 文件\逻辑运算符)
- vs2010往oracle 10g中插入数据
- 病毒周报(071029至071104)
- Google要推输入法 是战略布局还是战术需要?
- python随机生成车牌_Python实现随机生成任意数量车牌号
- golang 相互引用_golang go run undefined 同一个package中函数互相调用的问题
- bootstrap 垂直居中 布局_给你一份详细的CSS布局指南,请查收
- json 字符串传到action之后的处理,遍历. 练习代码片