在数学和数字电路中,**二进制(binary)**数是指用二进制计数系统,即以2为基数的计数系统表示的数字。这一系统中,通常用两个不同的符号0(代表零)和1(代表一)来表示。以2为基数代表系统是二进位制的。数字电路中,逻辑门的实现直接应用了二进制,因此现代计算机都是二进制。每个数字成为一个位元(二进制位)或比特(Bit,Binary digit的缩写)。
将十进制数转化为二进制数:
整数部分,把十进制转化二进制一直分解至商数为0.读余数从下读到上,即使二进制的整数部分。
小数部分,先将其×2,取其整数部分的结构,再用计算后的小数部分依次重复计算。算到小数部分全为0为止,之后读计算后的整数部分,从上读到下。
例如,将
(
19.75
)
1
0
{\left(19.75\right)}_10
(19.75)10转化为二进制
整数部分:
19
÷
2
=
9......1
19\div2=9......1
19÷2=9......1
9
÷
2
=
4......1
9\div2=4......1
9÷2=4......1
4
÷
2
=
2......0
4\div2=2......0
4÷2=2......0
2
÷
2
=
1......0
2\div2=1......0
2÷2=1......0
1
÷
2
=
0......1
1\div2=0......1
1÷2=0......1
小数部分:
KaTeX parse error: Undefined control sequence: \time at position 5: 0.75\̲t̲i̲m̲e̲2=1.5整数部分为1,小数部分为0.5
KaTeX parse error: Undefined control sequence: \time at position 4: 0.5\̲t̲i̲m̲e̲2=1.0整数部分为1,小数部分为0
(
19.75
)
10
=
(
10011.11
)
2
\left(19.75\right)_{10}=\left(10011.11\right)_2
(19.75)10=(10011.11)2
二级制数转化成十进制数:
按权展开求和即可。比如将
(
10011.11
)
2
{\left(10011.11\right)}_2
(10011.11)2转化为十进制”
(
10011.11
)
2
=
2
4
×
1
+
2
3
×
0
+
2
2
×
0
+
2
1
×
1
+
2
−
1
×
1
+
2
−
2
×
1
{\left(10011.11\right)}_2=2^4\times1+2^3\times0+2^2\times0+2^1\times1+2^-1\times1+2^-2\times1
(10011.11)2=24×1+23×0+22×0+21×1+2−1×1+2−2×1
=
16
+
2
+
1
+
0.5
+
0.25
=16+2+1+0.5+0.25
=16+2+1+0.5+0.25
=
19.75
=19.75
=19.75
二进制加减法
加法运算和十进制的区别只是把“逢十进一”改成“逢二进一”,例如计算 ( 1001 ) 2 + ( 1011 ) 2 (1001)_2+(1011)_2 (1001)2+(1011)2
1 0 0 1
+ 1 0 1 1
------------
1 0 1 0 0
减法也类似,就是把“借一当十”改成“借一当二”,例如计算 ( 10000 ) 2 − ( 1010 ) 2 (10000)_2-(1010)_2 (10000)2−(1010)2
1 0 0 0 0
- 1 0 1 0
------------
1 1 0