原码,反码,补码

原码

什么是原码

原码:十进制数据的二进制表现形式,最左边是符号位,0为正,1为负

最大值 0 1 1 1 1 1 1 1 => +127

最小值 1 1 1 1 1 1 1 1 => -127

原码的弊端

利用原码对正数进行计算是不会有问题的

但是如果是负数计算,结果就会出错,实际运算结果,跟我们预期结果是相反的。

反码

目的

为了解决不能计算负数的问题而出现的

计算规则

正数的反码不变,负数的反码在源码的基础上,符号位不变,数值取反,0变1,1变0。

例:

-56 原码 1 0 1 1 1 0 0 0

-56 反码 1 1 0 0 0 1 1 1

反码的弊端

负数运算时,结果不跨0,没问题,结果跨0,跟实际结果会有1 的偏差

补码

目的

为了解决负数计算时跨0的问题而出现的

计算原则

正数的补码不变,负数的补码在反码的基础上+1

正数的原码,反码,补码相同

补码的注意点

计算机中存储和计算机以补码的形式进行的

-128 = > 1 0 0 0 0 0 0 0 没有原码和反码

所以一个字节取值单位 -128~127

<< 向左移动,低位补0

(8) 00001000 << 2 = > (32) 00100000

右移: >>向右移动,高位补0 或 1(补1补0跟原来的保持一致)

(8) 00001000 >> 2 => (2) 00000010

无符号右移 >>> 向右移动,高位补0

相关推荐
是真的小外套4 小时前
第十五章:XXE漏洞攻防与其他漏洞全解析
后端·计算机网络·php
一个有温度的技术博主12 小时前
计算机网络进阶五:揭秘时延带宽积、RTT与丢包率
计算机网络
南湖北漠14 小时前
记录生活中的一件小事(佚名整理)
网络·人工智能·计算机网络·其他·安全·生活
.豆鲨包1 天前
【计算机网络】数据链路层
网络·网络协议·计算机网络
zl_dfq2 天前
计算机网络 之 【TCP协议】(确认应答、超时重传、流量控制、三次握手、四次挥手、滑动窗口、快重传、延迟应答、Nagle算法、捎带应答、拥塞控制)
网络·计算机网络·tcp
一个有温度的技术博主2 天前
计算机网络基础三:从定义到分类,构建你的知识框架
计算机网络
zl_dfq2 天前
计算机网络 之 【TCP协议】(面向字节流、TCP异常情况、保活机制、文件与Socket的关系、网络协议栈的本质)
网络·计算机网络·tcp
zl_dfq2 天前
计算机网络 之 【TCP协议】(TCP的核心定位与控制本质、TCP报文结构)
网络·计算机网络·tcp
AnalogElectronic3 天前
考研408计算机学科专业基础综合——计算机网络复习
计算机网络·考研
y = xⁿ3 天前
(小林coding) 计算机网络学习笔记:什么是HTTP?
笔记·学习·计算机网络