java中原码、反码与补码的问题分析

白凯3

白凯3

2016-02-19 10:06

get新技能是需要付出行动的,即使看得再多也还是要动手试一试。今天图老师小编跟大家分享的是java中原码、反码与补码的问题分析,一起来学习了解下吧!
1.原码、反码和补码定义

1.原码

将最高位作为符号位(以0代表正,1代表负),其余各位代表数值本身的绝对值(以二进制表示)。
为了简单起见,我们用1个字节来表示一个整数。
     +7的原码为: 00000111
     -7的原码为: 10000111

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)

2.反码

一个数如果为正,则它的反码与原码相同;一个数如果为负,则符号位为1,其余各位是对原码取反。
为了简单起见,我们用1个字节来表示一个整数:
     +7的反码为:00000111
     -7的反码为: 11111000

3.补码

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)

补码:一个数如果为正,则它的原码、反码、补码相同;一个数如果为负,则符号位为1,其余各位是对原码取反,然后整个数加1。为了简单起见,我们用1个字节来表示一个整数:
+7的补码为: 00000111
-7的补码为: 11111001

已知一个负数的补码,将其转换为十进制数,步骤:
      1、先对各位取反;
      2、将其转换为十进制数;
      3、加上负号,再减去1。
      例如:
      11111010,最高位为1,是负数,先对各位取反得00000101,转换为十进制数得5,加上负号得-5,再减1得-6。

2.常见问题

我把int a=232;进行强转为byte类型时为什么是负数???

展开更多 50%)
分享

猜你喜欢

java中原码、反码与补码的问题分析

编程语言 网络编程
java中原码、反码与补码的问题分析

Java内存泄露问题分析

Java JAVA基础
Java内存泄露问题分析

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

Java方法的覆盖与隐藏的区别分析

编程语言 网络编程
Java方法的覆盖与隐藏的区别分析

关于Java编程的中文问题的几条分析原则

编程语言 网络编程
关于Java编程的中文问题的几条分析原则

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

深入java内存查看与分析详解

编程语言 网络编程
深入java内存查看与分析详解

基于Java多线程notify与notifyall的区别分析

编程语言 网络编程
基于Java多线程notify与notifyall的区别分析

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

好用的AJAX类代码分享

好用的AJAX类代码分享

怎么取消超级QQ?

怎么取消超级QQ?
下拉加载更多内容 ↓