02-二进制转换,原码 反码 补码

二进制是什么?
为什么用二进制?

计算机底层只能识别二进制。

计算机底层只识别二进制是因为计算机内部的电子元件只能识别两种状态,即开和关,或者高电平和低电平。

二进制正好可以用两种状态来表示数字和字符,因此成为了计算机最基本的表示方法。

在计算机内部,所有的数据都被转化为二进制形式进行处理和存储。

虽然计算机可以通过不同的编程语言和程序来处理不同的数据类型和格式,但最终都需要将其转化为二进制形式才能被计算机底层识别和处理。

进制之间的转换



什么事是 原码 反码 补码?

原码反码补码是计算机二进制的三种表示形式。

计算机在底层都是采用二进制补码形式表示的(为了能准确的计算)。

二进制位最高位称为符号位, 0 为正数, 1为负数。

正数的 原码 反码 补码都是一样的

javascript 复制代码
-34
128 64 32 16 8 4 2 1
 0    0   1  0  0 0 1 0

原码 :负数的原码 取绝对值的二进制,将符号位写成1   
1010 0010 
反码: 在原码的基础上,除了符号位,其余都取反 
1101 1101 
补码: 在反码的基础上加1 
1101 1110
相关推荐
一直不明飞行5 小时前
Java的equals(),hashCode()应该在什么时候重写
java·开发语言·jvm
REDcker5 小时前
有限状态机与状态模式详解 FSM建模Java状态模式与C++表驱动模板实践
java·c++·状态模式
你的保护色5 小时前
【无标题】
java·服务器·网络
basketball6165 小时前
C++ 构造函数完全指南:从入门到进阶
java·开发语言·c++
淘矿人6 小时前
Claude辅助DevOps实践
java·大数据·运维·人工智能·算法·bug·devops
小江的记录本6 小时前
【Java基础】泛型:泛型擦除、通配符、上下界限定(附《思维导图》+《面试高频考点清单》)
java·数据结构·后端·mysql·spring·面试·职场和发展
来恩10036 小时前
请求转发与响应重定向的使用
java
@杰克成6 小时前
Java学习30
java·开发语言·学习
次元工程师!7 小时前
LangFlow开发(三)—Bundles组件架构设计(3W+字详细讲解)
java·前端·python·低代码·langflow
oddsand18 小时前
Redis网络模型
java·数据库·redis