Java 源码,反码和补码
计算机在对数据进行运算的原理?
3 - 2 = 1
3 + (-2) = 1
先将3这个十进制,变成二进制的原码形式,然后变成反码形式,最后变成补码形式
先将-2这个十进制,变成二进制的原码形式,然后变成反码形式,最后变成补码形式
将这两个数二进制的补码形式参与运算会得到一个二进制补码形式
然后再将这个二进制的补码形式最终变回二进制的原码形式,然后再变成十进制,等得到 1
正数的原码反码和补码的转换规则?
正数的原码,反码和补码是一样的
负数的原码和反码和补码的转换规则?
负数的原码变反码,符号位不变,其余的0变1,1变0
负数的原码变补码,只需要+1
符号位:二进制的最左边的那一个位,就称为符号位,正数的符号位是0,负数的符号位是1
原码、反码和补码
3 - 2 = 1
3(十进制变为2进制)8bit -2
00000011 二进制的原码形式 10000010 二进制的原码形式
00000011 二进制的反码形式 11111101 二进制的反码形式
00000011 二进制的补码形式 11111112--> 11111110 二进制的补码形式(逢2进1)
3的补码和-2的补码 相当于进行相加
00000011
11111110
--------
100000001 一共就1个字节byte = 8bit 所以就去掉了前面进1的一位 = 00000001
00000001 二进制的原码形式
00000001 二进制的反码形式
00000001 二进制的补码形式
将二进制的原码形式 变十进制
= 1
本文来自博客园,作者:Bytezero!,转载请注明原文链接:https://www.cnblogs.com/Bytezero/p/18055502
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)