二、为什么要用二进制

一、什么是二进制
逢二进一的计数规则
规律:数字 0,1
进位基权:2
权:8、4、2、1 --基数的幂次 。
二、为什么要用二进制
成本最优的解决方案
三、如何用二进制 3.1二进制与十进制的转换 3.1.1、十进制转二进制
方法为:十进制数除2取余法,即十进制数除2,余数为权位上的数,得到的商值继续除2,依此步骤继续向下运算直到商为0为止 。
比如7的二进制算法:
3.1.2、二进制十进制
方法为:把二进制数按权展开、相加即得十进制数 。
3.2补码
利用无符号数模拟有符号数,能处理负数,节约成本 。
以4位数为例展示补码原理

二、为什么要用二进制

文章插图
max + 1 = min
min-1=max
min - max =1
n + (max + 1)* 2 = n
n + (min)* 2 = n
n + (max + 1)* 2 * m = n
-n = ~n+ 1 (一个数取反加1 等于它的相反数,两头不符合)
补码的优缺点:
优点:可以支持任何有符号数的数学运算;
缺点:不能进行超范围计算,超范围就会溢出 。
3.3十六进制
逢16进一的数
数字:1、2、3、4、5、6、7、8、9、a、b、c、d、e、f
权:1、16、256
二进制的简写(4位二进制可以与1位16进制相互转化)
二、为什么要用二进制

文章插图
00000
00011
00102
00113
01004
01015
01106
01117
10008
10019
1010a
1011b
1100c
1101d
1110e
1111f
【二、为什么要用二进制】3.4二进制运算 ~ 取反运算| 或运算 --有1则1,同0位0& 与运算 --有0则0,同一为1^ 异或运算相同为0,不同为1>>>逻辑右移位(高位补0,右移几位,高位补几个0,对负数而言无意义)>>数学右移位(高位是1补1,是0补0)