二进制的介绍,原码,反码和补码是什么_二进制通俗易懂

二进制的介绍,原码,反码和补码是什么_二进制通俗易懂二进制以及原码反码和补码_二进制的原码反码补码

目录

一、二进制

1.1、生活中的进制

1.2、二进制的转换

1.3扩展二进制转八进制和十六进制

 二、原码、反码和补码


一、二进制

1.1、生活中的进制

我们经常能听到二进制、八进制和十六进制这样的讲法,那这是什么意思呢?其实呀,不管是什么进制,都是数值的不同表达形式。

比如数字15:

15的二进制:1111

15的八进制:17

15的十进制:15

15的十六进制:f

我们重点说一下二进制:

我们日常是生活中所使用的是十进制,我们已经知道:

  • 十进制满10进1
  • 十进制的数字每一位都是0~9的数字组成

其实二进制也是一样的:

  • 二进制满2进1
  • 二进制的数字每一位都是0~1的数字组成

1.2、二进制的转换

十进制的123表达值是一百二十三,为什么是这个值呢?其实10进制的每一位都是由权重的,10进制的数字从右到左是个位、十位、百位……,每一位的权重分别对应10^{0}10^{1}10^{2}……

如图所示:

二进制的介绍,原码,反码和补码是什么_二进制通俗易懂

 二进制和十进制是类似的,只不过二进制每一位的权重是2^{n}

比如是二进制的1101,该怎么理解呢?

二进制的介绍,原码,反码和补码是什么_二进制通俗易懂

那么十进制和二进制怎么进行转换呢?

二进制的介绍,原码,反码和补码是什么_二进制通俗易懂 

每次除以2然后得出的余数从下往上换算出来就是二进制了。

1.3扩展二进制转八进制和十六进制

8进制的数字每⼀位是0~7的,0~7的数字,各⾃写成2进制,最多有3个2进制位就⾜够了,⽐如7的⼆ 进制是111,所以在2进制转8进制数的时候,从2进制序列中右边低位开始向左每3个2进制位会换算⼀ 个8进制位,剩余不够3个2进制位的直接换算。

二进制的介绍,原码,反码和补码是什么_二进制通俗易懂

就比如图上二进制的01101011,换成八进制:0153,0开头的数组,会被当做八进制

二进制的介绍,原码,反码和补码是什么_二进制通俗易懂 

 我们打印0153,打印出来的是107,而107的二进制就是01101011

接下来看二进制转化为十六进制

16进制的数字每⼀位是0~9,a ~f 的,0~9,a ~f的数字,各⾃写成2进制,最多有4个2进制位就⾜够了, ⽐如 f 的⼆进制是1111,所以在2进制转16进制数的时候,从2进制序列中右边低位开始向左每4个2进 制位会换算⼀个16进制位,剩余不够4个⼆进制位的直接换算。

还是二进制的01101011,转换成十六进制,0x6b,0x开头的数值表示16进制

二进制的介绍,原码,反码和补码是什么_二进制通俗易懂

 我们打印一下0x6b,看看打印出来是不是107

二进制的介绍,原码,反码和补码是什么_二进制通俗易懂

 二、原码、反码和补码

整数的二进制表示方法有三种,即原码、反码和补码。三种表示方法均有符号位和数值位两部分,符号位0表示“正”,1表示“负”,数值为最高位的一位是被当作符号位,剩余的都是数值位。正整数的原码、反码和补码都相同。负整数的三种表示方法各不相同。

举个列子:

正整数1的原码、反码和补码都是

00000000 00000000 00000000 00000001

而负整数-1的原码、反码和补码是

10000000 00000000 00000000 00000001

11111111 11111111 11111111 11111110

11111111 11111111 11111111 11111111

这个有什么规则呢?负整数的原码、反码和补码的规则是:

  • 原码:直接将数值按照正负数的形式翻译成⼆进制得到的就是原码。
  • 反码:将原码的符号位不变,其他位依次按位取反就可以得到反码。
  • 补码:反码+1就得到补码。

对于整型来说,数据存放内存中其实存放的就是补码,为什么呢?

在计算机系统中,数值一律用补码来表示和存储。原因在于,使用补码,可以将符号位和数值域统一处理:同时,加法和减法也可以统一处理(cpu只有加法器)此外补码与原码相互转换,其运算过程是相同的,不需要额外的硬件电路。

今天就是这些内容啦。今天《甜甜的》!

今天的文章二进制的介绍,原码,反码和补码是什么_二进制通俗易懂分享到此就结束了,感谢您的阅读。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/82000.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注