目录
一、何为进制?
数制是指用一组固定的数字符号和统一的规则来表示数值的方法。其中,按照进位方式计数的数制称为进位计数制。日常生活中,人们习惯用的进位计数制是十进制,而计算机则使用的是二进制。此外,为了某些特定的计算,进位计数制还包含了八进制和十六进制。
顾名思义,二进制就是逢二进一的数制,十进制就是逢十进一,八进制就是逢八进一,十六进制就是逢十六进一。
所以,二进制的数据中只包含0和1;十进制数据包含0~9;八进制数据包含0~7;十六进制数据包含0~9和A~F。
为了对十进制、八进制、十六进制共有的数据进行区分,通常会在八进制前面加上数字0,在十六进制前面加上数字0和字母x(大小写都可以)。
07表示八进制的7
7表示十进制的7
0x7表示十六进制的7
0X7也表示十六进制的7
详细可见此表:
注意观察:八进制7之后为8,满8进一,所以为10(一零)。
十六进制F(15)之后是16,满16进一,所以为10(一零)。
十进制 | 二进制 | 八进制 | 十六进制 |
1 | 0000 0001 | 01 | 0x1 |
2 | 0000 0010 | 02 | 0x2 |
3 | 0000 0011 | 03 | 0x3 |
4 | 0000 0100 | 04 | 0x4 |
5 | 0000 0101 | 05 | 0x5 |
6 | 0000 0110 | 06 | 0x6 |
7 | 0000 0111 | 07 | 0x7 |
8 | 0000 1000 | 10 | 0x8 |
9 | 0000 1001 | 11 | 0x9 |
10 | 0000 1010 | 12 | 0xA |
11 | 0000 1011 | 13 | 0xB |
12 | 0000 1100 | 14 | 0xC |
13 | 0000 1101 | 15 | 0xD |
14 | 0000 1110 | 16 | 0xE |
15 | 0000 1111 | 17 | 0xF |
16 | 0001 0000 | 20 | 0x10 |
二、 十进制转换为二进制、八进制、十六进制。
十进制转二进制:
“除2取余倒读”法,用十进制数除以2,取每次的余数,当商为零时,将结果倒着写。
十进制转八进制:
“除8取余倒读”法,用十进制数除以8,取每次的余数,当商为零时,将结果倒着写。
十进制转十六进制:
“除16取余倒读”法,用十进制数除以16,取每次的余数,当商为零时,将结果倒着写。
注意理解:14在十六进制里面是E。
三、 二进制转换为十进制、八进制、十六进制。
二进制转十进制:
按位运算法(书本上是从高位向低位顺序相加,而本人个人习惯是从低位向高位算起。注意分辨)
二进制转八进制:
因为2的3次方=8,所以我们用三个二进制位的数来表示八进制的数。
如果三位三位的划分,总会有位数不够怎么三位的时候,这个时候我们在选择前面补零,这个操作称为补位,注意理解。
二进制转十六进制:
因为2的4次方=16,所以我们用四个二进制位的数来表示十六进制的数。
如果四位四位的划分,总会有位数不够怎么四位的时候,这个时候我们在选择前面补零。
四、八进制和十六进制之间相互转换。
首先,我们已经知道了,一个八进制数是3个二进制的数来表示,一个十六进制的数是4个二进制的数来表示。
那么我们可不可以之间将八进制数转为十六进制的数。
注意:八进制是没办法直接转换为十六进制的!
既然不能直接转换,那能不能找到一个中间变量呢?通过中间变量来进行转换。想一想八进制和十六进制都和什么有关呢?
没错,就是二进制!
至此,感谢观看,祝大家身体安康,学业有成!!!