原码,反码,补码以及计算

简介: 原码,反码,补码以及计算

愿所有美好如期而遇


我们的数据在计算机中都是以二进制形式存储的,而数据都有不同类型,但总归都会转换成数值。

原码:将数值转换成二进制。

  • 正数首位为0,表示正数
  • 负数首位为1,表示负数

反码:

  • 正数:同原码
  • 负数:在原码的基础上,符号位不变,其他位按位取反

补码:

  • 正数:同原码
  • 负数:在反码基础上,加1

而且计算机只有加法器,没有减法器,那么如何进行减法呢?也就是一个整数加上一个负数,同时,数值在计算机存储时按照补码存储,不按原码和反码存储,同时,计算时也是按照补码进行计算,因为这样可以将符号位和存储大小的位进行统一处理,而原码就不可以,我们来验证一下:

我们来探讨一下char的大小范围以及其原因:

那么如果一个超过范围的数赋值给char类型的变量会怎么样?我们画个图来理解

如果说129赋值给一个char类型的变量,那么可以这样理解,127+2,也就是在圈里顺时针走两位,也就是-127。

目录
相关文章
|
7月前
原码、反码、补码的互相转换
原码、反码、补码的互相转换
181 0
|
7月前
原码反码补码移码的介绍和计算
原码反码补码移码的介绍和计算
179 1
|
机器学习/深度学习 存储
数据的表示:原码、反码、补码、移码以及浮点数的运算
数据的表示:原码、反码、补码、移码以及浮点数的运算
514 0
数据的表示:原码、反码、补码、移码以及浮点数的运算
原码补码反码
原码补码反码
139 0
|
存储
一篇轻松带你Carry原码、反码、补码(建议收藏)
一篇轻松带你Carry原码、反码、补码(建议收藏)
223 0
原码、反码、补码
原码、反码、补码区别
170 0
|
Go 开发者
原码 反码 补码|学习笔记
快速学习原码 反码 补码。
117 0
原码、反码、补码及减法运算
原码、反码、补码及减法运算
223 0
|
存储 前端开发 索引
|
Java C++
快速理解原码、反码、补码
学弟不懂原码反码补码,气的我给女朋友彻底讲了一夜
376 0
快速理解原码、反码、补码