二进制详解:世界上有10种人,一种懂二进制,一种不懂。
目录
一、十进制整数转二进制、八进制、十六进制
首先是一张 十进制转二进制 的计算过程图,简直精品:
之前得记清楚运算规则: 除2取余, 逆序余数
但是有了这张图就不用记了 : 直接把 算式得到的余数列 顺势扳倒 就是结果了 , 你看这个扇形,他多有灵性!
有了此图,十进制整数 转 八进制、十六进制 的计算问题也就轻松解决了 ,直接把除数2 换成 8和16 就行了
补充:
上述方法算出来的是二进制原码
计算机字节里采用二进制补码记录数字
所有非负整数的补码和原码一样
二、二进制转十进制、八进制、十六进制
把二进制数 110111 转为 10进制 :
可以用 1248 法:32+16+4+2+1= 55
也可以用 1*(2^5)+1*(2^4)+0*(2^3)+1*(2^2)+1*(2^1)+1*(2^0)= 32+16+0+4+2+1 = 55
这个一般记得住,就不啰嗦了。
把二进制数 110111 转为 8进制 && 16进制 :
二进制三位相当于8进制一位 | 二进制四位相当于16进制1位
4 2 1 4 2 1 | 8 4 2 1 8 4 2 1
—————————————— | ———————————————————
1 1 0 1 1 1 | 0 0 1 1 0 1 1 1
= 4+2+0 4+2+1 | = 0 0 2 1 0 4 2 1
= 6 7 | = 3 7
三、十进制、八进制、十六进制转二进制
十进制 转 二进制 如 标题一、中的顺势扳倒
八进制、十六进制 转 二进制
是二进制 转 八进制、十六进制的逆运算:
八进制一位相当于二进制三位 && 十六进制一位相当于二进制四位
四、二进制小数与十进制小数
1.二进制小数 转 十进制小数
把二进制小数 0.1011 转为十进制: 1 / (2 4 8) 法
1 * ½ + 0 * ¼ + 1 * 1/8 + 1 * 1/16 = 1/(2+4+8)= (8+2+1)/16 = 11/16
2.十进制小数 转 二进制小数
用十进制小数一直乘2,若结果的各位数字是1,则右边记1,并把1改为0;若不够则记0
和十进制整数转2进制整数不同的是,不能顺势扳倒了,算小数比较难嘛。。。要费点力气往上扳了!
并不是所有十进制数都可以等值转换为二进制数( 比如有的十进制小数就转换不成二进制 )