原码反码补码

在Java中,无论是小数还是整数,他们都要带有符号(和C语言不同,C语言有无符号数)。首位就作为符号位。

原码

反码

  • 正数的反码是其原码本身
  • 负数的反码是在其原码的基础上, 符号位不变,其余各个位取反

补码:

  • 正数的补码就是其本身
  • 负数的补码是在其原码的基础上, 符号位不变, 其余各位取反, 最后+1(即在反码的基础上+1,此时1000表示-8)

比如-7原码为1111,反码为1000,补码就是1001了,-6原码为1110,反码为1001,补码就是1010。运算:

1+(-1) = 0001 + 1111 = (1)0000 => +0 (现在无论怎么算,也不会有-0了)

相关推荐
weixin_4365250717 分钟前
若依 - idea集成docker一键部署springboot项目(docker-compose)
java·1024程序员节
鼠鼠我捏,要死了捏18 分钟前
深入解析Java GC调优:从原理到实战
java·性能优化·gc调优
Live&&learn18 分钟前
Tomcat 10和Tomcat 9引入servlet的不同
java·servlet·tomcat
siriuuus19 分钟前
JVM 垃圾收集器相关知识总结
java·jvm
weixin_4365250725 分钟前
Windows - Maven 安装到 IDEA 配置全流程
java·maven·intellij-idea
启山智软26 分钟前
APS系统适合哪些行业或企业规模
java·商城开发
在等晚安么38 分钟前
记录自己写项目的第三天,springbot+redis+rabbitma高并发项目
java·spring boot·redis·1024程序员节
OkGogooXSailboat1 小时前
flume的log4j日志无输出排查
java·flume·1024程序员节
想睡好2 小时前
express中间件(java拦截器)
java·中间件·express
兢兢业业的小白鼠2 小时前
Java常用中间件整理讲解——Redis,RabbitMQ
java·中间件·java-rabbitmq·1024程序员节