二进制计算

计算机的世界里缺少不了二进制的存在,我们总听到计算机是0和1组成的,而这两个数字恰恰就是二进制的必备元素

十进制与二进制

  • 十进制:回到小学初识数字的时候,从小到大接触的数字中从0数到9,比9大一个数就要进一位也就是10,这就是十进制,即逢10进1,这就是十进制

  • 二进制:从0开始数,当数到2时就进一位,即逢2进一,例如: 0,1,10,11,100,101,110,111。这就是二进制

转换

初次接触二进制总会觉得别扭,例如101,这个数字在十进制中是一百零一,在二进制中他就代表了数字5,这时候脑袋上可能会有大大的问号,怎么就知道他就是5呢,这里就要说一下进制转换了

当我们已知一个十进制数字的时候怎么转换成二进制呢,(余数法)方法如下:

  1. 5 ÷ 2 = 2 … 1
  2. 2 ÷ 2 = 1 … 0
  3. 1 ÷ 2 = 0 … 1

我们从上到下将余数拼接就是5(十进制)= 101(二进制)

如果这里还是没看懂那可以看接下来的解释

我们从0开始数(下面示例中序号为十进制,计算为二进制

  1. 0
  2. 0 + 1 = 1
  3. 1 + 1 = 10(二进制),二进制逢2进1,此处进位即10(二进制)
  4. 10 + 1 = 11
  5. 11 + 1 = 100,二进制逢2进1,进位后为20,同理进位即100
  6. 100 + 1 = 101

进阶

熟练转换以后我们可以把二进制和十进制做一个对比:

十进制与二进制

将二进制中只有1和0的情况提取出来,就行成了下面这样:

十进制与二进制

这个时候把列表反过来看:

十进制与二进制

把这个对照变成二进制再看一下:

十进制与二进制

回过头再看一下最一开始的例子即 5(十进制) 转换为二进制 101:

十进制与二进制

以上就是十进制转二进制全过程了

而二进制转换十进制就是将表中对应的数字上下相乘,然后结果相加即可

字节

在计算机系统中 字节(byte) 是最基础的计量单位,一个字节代表了一个8位长的二进制数字,每四个字节拼在一起代表了一个字

简单标识就是如下面原码所示,00000000这个八个数字组成一个字节,四个字节组成了一个数字5,即

00000000 00000000 00000000 00000101 

原码

原码:即原数字转换为二进制后的二进制数

5的原码为

00000000 00000000 00000000 00000101

反码

反码:反码即对原码进行取反,将所有的0换为1,所有的1换为0

5的反码为

11111111 11111111 11111111 11111010

补码

补码:补码是反码+1

所以上述的补码为

11111111 11111111 11111111 11111010 + 1 =

11111111 11111111 11111111 11111011

补码在二进制中主要表示一个整数的负数