关于二进制???

发布于:2022-12-24 ⋅ 阅读:(289) ⋅ 点赞:(0)

二进制

二进制转化为十进制

二进制是一套计数方法,每个数位有0、1两种可能,类比在日常生活中我们使用的十进制,每个数位有0-9十种可能;

关于十进制,从右到左,每一位的位权,也就是说固定位置的固定单位分别是:

  • 10^0=1
  • 10^1=10
  • 10^2=100
  • ……

因此,105这个数的值就可看作1×10²+0×10¹+5×10⁰=105

同理得到:

  • 2^0=1
  • 2^1=2
  • 2^2=4
  • 2^3=8
  • 2^4=16
  • 2^5=32
  • 2^6=64
  • ……

二进制数101011B转换为十进制数就是1×2⁵+0× 2⁴+1× 2³+0× 2²+1× 2¹+1× 2⁰=43

任意进制的数转化为十进制,都是按照各位数码与位权相乘,再加到一起;

计算机中采用二进制计数,因此计算机中的数、字母、符号都是以特定的二进制数来表示,这就是二进制编码;

机器只能识别二进制数,因此,键盘上所有的数字、字母和符号都以特定的二进制编码表示,以便机器识别、存储、处理和传送;

为什么计算机要采用二进制实现呢?

1.在技术上容易实现,可以用任何一个具有两种不同稳定状态的物理器件(如信号的有无,电平的高低等)来表示数码“0”和“1”;

2.运算简单,r进制数共有r×(r-1)/2个求和与积的运算公式,对二进制而言,只有3个求和公式(0+0=0,0+1=1,1+1=10)三个求积公式(0×0=0,1×0=0,1×1=1)

3.逻辑判断方便;

4.状态稳定;

十进制转化成二进制

1.十进制整数转换为任意进制整数——除基取余法

以十进制数转换为二进制数为例,将十进制数连续除以基数2,直到商等于0为止,然后逆序排列每次得到的余数,就得到了与该十进制对应的二进制数;

在这里插入图片描述

2.十进制小数转换为任意进制小数——乘基取余法

以十进制小数转换为二进制数为例,将十进制小数连续乘以基数2,直到乘积的小数部分等于0为止,然后顺序排列每次得到的乘积的整数部分,就得到了该十进制小数对应的二进制小数;

在这里插入图片描述

无符号数和有符号数

所谓的无符号数,是全部的二进制位均表示数值的位,相当于数的绝对值;
对于有符号数,数据的最高位表示符号,而不再表示数值位。符号的正负要依据所采用的编码方式来确定;

有符号数分为原码、反码、补码和移码等多种表示形式;

原码

原码的最高位是符号位(“0”表示该数为正,“1”表示该数为负),数值部分不变;

利用原码进行乘除运算比较简单,但是加减运算规则复杂,首先要分析两数的符号位是否相同,然后比较两数绝对值的大小,以决定实际做加法还是减法,最后还要确定符号;

反码

正数的反码是其本身,负数的反码是在其原码的基础上,各个位取反;

补码

人们设置了补码克服复杂的加减法运算,补码使得符号位也能参与运算,并将减法转换为加法;

正数的补码是其本身,负数的补码,是它的反码+1;

二进制的计算规则

在这里插入图片描述
在这里插入图片描述

本文含有隐藏内容,请 开通VIP 后查看