生活中的进制
时间转换:
古代的二进制
二进制,八进制,十六进制转为十进制
10进制,8进制,16进制的取数范围如下:
进制转换方法
10进制如何转成8进制或者16进制???
首先把10进制转成2进制,由2进制转8进制(每3位2进制代表1位8进制)或者16进制(每4位2进制代表1位16进制)
10进制转2进制
首先,我们把10进制转成2进制,我们可以通过除2取余法,我们也可以通过下面贪心算法这种方法:
103不大于128,我们在128的位置填上0
103大于64,我们在64的位置填上1
然后我们还要记得把103减去64哦!!!
103-64=39
39大于32,我们在32的位置填上1
然后把39减去32
39-32=7
7小于16,所以我们在16的位置上填上0
7小于8,所以我们在8的位置上填上0
7大于4,我们在4的位置上填上1
然后记得把7减去4
7-4=3
3大于2,我们在2的位置上填上1
然后把3减去2
3-2=1
1等于1,我们在1的位置上填上1
大功告成!!!
10进制的103转成2进制就是:01100111
最前面的0可以省略掉。
所以得出:1100111
2进制转8进制
2进制(1100111)得出来了,我们就很容易就可以得到8进制了:
每3位2进制就是1位8进制,前面不够就补上0
所以,得出的8进制数是:147
2进制转16进制
2进制(1100111)得出来了,我们就很容易就可以得到16进制了:
每4位2进制就是1位16进制,前面不够就补上0
所以,得出的16进制数是:67
16进制的表示
1、在C,C++规定,16进制数必须以 0x 开头,且不区分大小写。如:0xff,0xFF,0X102A等等;
最后一点很重要,C/C++中,10进制数有正负之分,比如12表示正12,而-12表示负12,;
但8进制和16进制只能用达无符号的正整数。
2、在8086汇编中,十六进制数,由0-9及字母A-F组成的,后面跟字母H,第一个字符必须是0-9,如果以A-F开头,必须在其前加0,比如说: 0ffffh。