计算byte类型127+1
byte类型127+1是 (-128)
public static void main(String[] args) {byte a = 127;byte b = (byte)(a+1);System.out.println(b);
}
计算机对数据的二进制存储形式——补码
原码、反码、补码的转换方法
在最高位代表符号位区分正数还是负数,0代表正数,1代表负数
原码:
45:00101101
-45:10101101
反码:
45:00101101
-45:11010010
正数的原码和反码相同,负数的反码等于原码的符号位不变,其余各位按位取反
补码:
45:00101101
-45:11010011
正数的原码反码和补码都形同,负数的补码等于在其反码基础上末尾+1
在计算机只有加法没有减法,在做减法运算时可以看做加上一个负数。
(1)若计算机以原码计算,与实际结果不符:
1-1=1+(-1)=[00000001]原+[10000001]原=[10000010]原= -2
(2)若计算机以反码计算,会产生0的符号问题,出现±0:
1-1=1+(-1)=[00000001]反+[11111110]反=[11111111]反=[10000000]原= -0
(3)采用补码计算可以解决0的符号以及两个编码的问题
1-1=1+(-1)=[00000001]补+[11111111]补=[00000000]补=[00000000]原= 0
计算byte类型127+1
使用补码, 还能够多表示一个最低数. 这就是为什么8位二进制, 使用原码或反码表示的范围为[-127, +127], 而使用补码表示的范围为[-128, 127]。
因为机器使用补码, 所以对于编程中常用到的32位int类型, 可以表示范围是: [-2^31, 2^31-1] 因为第一位表示的是符号位.而使用补码表示时又可以多保存一个最小值。
[127]补 = 01 111 111
[1]补=00 000 001
[-128]补 = 10 000 000
所以计算byte类型127+1 的结果为 -128
计算byte类型127+1相关推荐
- Java的byte类型取值范围为什么是负128到正127呢
Java的byte类型取值范围是-128~127为什么负数是128正数到127呢 概念:java中用补码表示二进制数,补码的最高位是符号位,最高位为"0"表示正数,最高位为&quo ...
- byte java byte_详解java中的byte类型
Java中整数类型有:byte占8位, short 占16位, int占32位, long占64位 Java也提供了一个byte数据类型,并且是基本类型中的整数类型.java byte是作为最小的数字 ...
- byte 类型比较_Java Grammar:数据类型
Java中的基础数据类型 Java的数据类型 我们知道,Java是一种强类型语言,类型对于Java语言来说非常的重要不言而喻,在Java中,分为基础数据类型和引用数据类型,其中基础数据类型分为了四类八 ...
- byte java 详解_详解java中的byte类型
Java也提供了一个byte数据类型,并且是基本类型.java byte是做为最小的数字来处理的,因此它的值域被定义为-128~127,也就是signed byte.下面这篇文章主要给大家介绍了关于j ...
- 二进制加减溢出问题详解,byte类型加减溢出详解。
byte类型的数在JAVA中占1个字节,也就是8位,那么8位中除去一个符号位,表示数值的共有七位. 例如:1000 0000 中1就是符号位,表示负数. 0111 1111 中0也是符号位,表示正数. ...
- Java中byte类型的取值范围
取值范围为-128~127 1.为什么是[-128,127] 计算机中存储最大的应该是0111 1111,第一位是符号位,所以表示最大的数值:127 存储的1 1111111应该是最小的数值: ...
- Java的byte类型详解
前言 byte这个单词是Java八种基本数据类型之一字节的关键字,在计算机存储中以字节为单位,8位比特(bit)组成一个字节. 为什么弄清楚byte这么重要呢?因为智能硬件的数据传输大部分协议都是按字 ...
- Java中的byte类型是有符号的吗_JAVA中byte类型的介绍。 谢谢
展开全部 Java也提供62616964757a686964616fe59b9ee7ad9431333431366265了一个byte数据类型,并且是基本类型.java byte是做为最小的数字来处理 ...
- int类型和byte类型的强制类型转换
今天在读<Java网络编程>这本书的第二章 流 时,看到书中有一个地方关于int强制转换为byte类型时应注意的地方.这个地方有点细节,不过就应该把这种细节把握住. 情况是这样的,讲到In ...
最新文章
- 开始使用VS2005+ASP.NET+Access(以后可能是MS SQL Server)编写管理系统的计划
- JavaScript知识点总结(二)
- html模块化标签,jq load()方法实现html 模块化。
- ant design中的栅格化系统
- hdu 4597 + uva 10891(一类区间dp)
- iptables NAT
- 计算机通过注册表修改摄像机设备的名称
- 想让“贾维斯”成为现实?物联网帮你拥有
- python能用于机械设计吗_为什么人工智能首选Python?因为有很多适用于ML和DL的Python库!...
- 词向量与垃圾邮件识别
- 【ESP 保姆级教程】疯狂点灯篇 —— 案例:ESP8266 + LED + 按键 + 阿里云生活物联网平台 + 公有版App + 天猫精灵(项目:我之家)
- 数据库——求候选键的方法
- QNX支持的BSP包QNX os supported board(ARM+MIPS+POWERPC+X86)
- C++核心准则C.164:避免隐式转换运算符
- 公司法人代表变更需要多少钱?
- 服务器无法取消指令方块显示,我的世界服务器如何关掉命令方块的提示(如图)?...
- chinacache解决方案——静态内容加速
- 腾讯副总裁邱岳鹏:云的发展要迈过三道关
- OCI runtime create failed: runc create failed: unable to start container process: --docker加载镜像
- setTimeout()的用法