1.正反合——“原补反” Byte b=-11;
1 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
图1-1为-11的原码形式;
1 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
图1-2为-11的反码形式;
1 |
1 |
【JAVA正反合——原码、补码与反码学习笔记’】1 |
1 |
0 |
1 |
0 |
0 |
图1-3为-11的补码形式,即-11的反码+1;
0 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
图1-4为+11的原码形式,其补码形式、反码形式与其原码形式完全相合。
1.1 “原补反”
所有数字在计算机底层均以补码的形式存在,且计算机以补码的形式存储整数。
如上图,正数的原码,补码,反码无任何差别;负数的反码为其原码符号位不变,其他位按位取反;而负数的补码是其反码+1。
Java的整数类型默认为int,其二进制有32位且第32位为其符号位;Byte,Long及其他基本数据类型同理。
推荐阅读
- Java|Java基础——数组
- 人工智能|干货!人体姿态估计与运动预测
- java简介|Java是什么(Java能用来干什么?)
- Java|规范的打印日志
- Linux|109 个实用 shell 脚本
- 程序员|【高级Java架构师系统学习】毕业一年萌新的Java大厂面经,最新整理
- Spring注解驱动第十讲--@Autowired使用
- SqlServer|sql server的UPDLOCK、HOLDLOCK试验
- jvm|【JVM】JVM08(java内存模型解析[JMM])
- 技术|为参加2021年蓝桥杯Java软件开发大学B组细心整理常见基础知识、搜索和常用算法解析例题(持续更新...)