进制
二进制,二进制就是0和1组成的代码,是计算机唯一能看懂的语言,所有程序代码最终都会被转成二进制
代码让计算机去阅读,从而实现。
逢二进一 二进制中只有0和1,第一个数字是0,0+1=0001,0001+1=0010,0010+1=0011,0011+1=0100 。。。。依次类推
十进制,就是我们平时使用的进制,也是我们最熟悉的,日常生活中最常使用的进制,
逢十进一 十进制有0-9,没有10,十进制和二进制我们平时用的最多,也最简单,还有八进制和十六进制,我们后面再说
二进制和十进制的转换
我们把二进制4位一分,比如0001,0010,0011,0100,0101,0110,0111,1000,1001与之相对应的是
1, 2, 3, 4, 5, 6, 7, 8, 9
我们发现规律拿7也就是0111来举例子 二进制的最末一位,1,他就相当于是十进制的1
倒数第二位,1, 他就相当于是十进制的2
倒数第三位,1, 他就相当于是十进制的4
第一位 ,0,他就相当于是十进制的8,但是由于是0,所以这里也是0
1+2+4=7 所以0111就是7 通过这种方法我们可以迅速的用二进制转换成十进制,1111我们来快速计算下就是1+2+4+8=15,所以1111就是15。
再来一个0001 0001 突然出现了两个,怎么办。。聪明的你一定发现了规律,2,4,8,接下来就该16了,16后面就是32,32完了就是64,对就是这个规律,除了最末位是1,剩下的就是按这个顺序排的,所以0001 0001就是17。
当然 我们还有公式,由于不好理解我们就不详细去管他了,我可以把这些公式写下来
二进制--->十进制
A:二进制:每个位的数字,乘以权重(2的n次方),累加求和
1111 =从末尾开始1*2^0+1*2^1+1*2^2+1*2^3=1+2+4+8=15
十进制转二进制
十进制20转换二进制咋转嘞我们先拆分下20恩可以分成16+4,看到16和4突然意识到了什么4不就是0010嘛,那16呢不就是 0001 0000那把16和4组合在一起那就是0001 0010,貌似这就是20哈,好像对了,十进制如果遇到二进制,我们就把它拆分,拆分成我们熟悉的1,2,4,8,16,32,64等等,这种方法比较适用于数字比较小的100以内应该都可以口算出来
我们来试一个88,看到88 首先应该想到64,88-64还剩下多少呢,还剩下24,这就好办了24拆分成16和8,88=64+16+8,我觉得我已经算出来二进制是多少了先从最小的开始写8=0000 1000 ,16=0001 0000 ,64=0100 0000我们来把这三个组合在一起,书0 的地方就还是0 有1的地方就改成1最后结果就是0101 1000,我们学过二进制转十进制,来验证一下验证下对不对,哈哈是对的,那碰上大数字咋办嘞
不要怕我们还有公式
B:十进制--->二进制、八进制、十六进制
十进制数,除以2、8、16,取余数,直到商为0,余数倒过来。
不过一般情况下,不会有人去让你去转换的,这都是计算机的工作,我们只要知道原理就可以了
八进制转换二进制
所谓八进制也就是逢八进一,1-7,到了8就10,然后继续往下
二进制也可以快速转换成八进制 我们把二进制分成三个一组,001,010,011,100,101,110,111
1, 2, 3, 4, 5, 6 , 7
由于八进制没有8更没有9所以到了7就结束了那八以后怎么表示呢,001 000 这就对应8进制中的10,哦你又发现规律了,除了没有8以后的数字,这个跟二进制转换十进制算法是差不多的,但是结果是不一样的,我们来练习一个,111 100 转换八进制还是从最末三个开始 100=八进制中的4 111呢=八进制中的7,所以111 100=八进制的74,这么简单吗?,就是三位拼一个数?是的就是这么简单。
来个难一点的111 100 110 110=八进制多少一个一个来 111=7 100=4 110=6 110=6所以结果就是 7466,好了二进制转八进制你也学会了,我们还想用八进制转十进制,那就先用八进制转成二进制,在由二进制转换成十进制就可以了,什么你说麻烦,好吧我来给你公式,
八进制:每个位的数字,乘以权重(8的n次方),累加求和
八进制:231--->十进制?=1*8^0 + 3 * 8^1 + 2 * 8 ^ 2
=1*1 + 3*8 + 2*64
=1+24+128
=153
十六进制转换二进制
二八十我们都会互转了,还有个十六进制
十六进制包括
0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
A:10
B:11
C:12
D:13
E:14
F:15
到了16咋表示呢,对就是10,
接下来是转换二进制转换十六进制,还是4位成一组,1000 1001,来算下1000=8,1001=9
所以合起来就是89。
那1000 1111等于多少呢 1000=8,1111=15吗?往上看下15用什么表示,原来是 F,所以就等于8F
十六进制转十进制我们也有公式哈
十六进制:每个位的数字,乘以权重(16的n次方),累加求和
十六进制:2C--->十进制?
=C*16^0 + 2*16^1
=12*1+2*16
=12+32
=44
到了这里我们基本都可以互相转换了,都可以先转换成二进制,然后再由二进制转换成各种进制。