计算机常用进制的相关介绍:
1,二进制(计算机技术中广泛采用的一种数制),八进制,十进制,十六进制
二进制数据是用“0”和“1”两个数码来表示的数。它的基数为2,进制规则就是“逢二进一”,有别于我们生活当中常用的十进制。计算机只能处理和识别“0”和“1”符号串组成的代码,所以我们可以用开关来表示这两个数码,用“开”来表示1,用“关”表示0。
各进制的表示形式:
二进制 ,用2个阿拉伯数字:0、1; 以0b(b可以大写也可以小写)开头
八进制,逢8进1,用8个阿拉伯数字:0、1、2、3、4、5、6、7;以0开头
十进制,用10个阿拉伯数字:0到9; 整数默认是十进制
十六进制就是逢16进1,但我们只有0~9这10个数字,所以我们用A,B,C,D,E,F这五个字母来分别表示10,11,12,13,14,15。字母不区分大小写。以0x开头。
演示:依次输出不用进制表示100的数据。
- 0b100(二进制)
- 0100(八进制)
- 0x100(十六进制)
2,进制间的相互转换
下面总结我自己在进制转换的常用方法,仅供参考,毕竟各进制都可以相互转换,先转成哪个进制在乎于自己的喜爱。
我总结的有以下四大类,每个类别又有两种情况,一共有8种情况。
1. 十进制和二进制之间的相互转换:
十进制——>二进制
方法:8421码
如图:一个字节有八个二进制位,下面是一个字节的二进制位表示
第一行为二进制位,第二行为对应二进制位的十进制表示,通过记住这种表示方法,可以快速地将二进制数据和十进制数据进行转换。
演示:
十进制的数据129转换为二进制数据
步骤:
1将129和比129小的二进制位表示的十进制数最大的那一个作差,并在该二进制位用1表示,接着将余数和上一个二进制的低一位表示的十进制数相减,不足的用0表示二进制位,以此类推,直到没有余数。129 > 128,所以128对应的二进制位用1表示,而129-128=1,刚好二进制的最低位是1,则该二进制位用1表示,没有了余数,即完成。
二进制–>十进制
与上面的转换思想相反即可。
例:
0b110
原码:
00000110
4 2
上面二进制的两个1对应的分别是4和2,将他们相加,就是4+2=6。则0b110的十进制数为6。
2. 二进制和八进制,十六进制的相互转换
二进制–>八进制
一个八进制数由三个二进制数组成(2^3=8),所以,依照这个思想,我们可以以三个二进制数为一个单位,不足补0,组成一个八进制数。
例:0b1110
原码:
001 110
—— ——
1 4+2 (按权展开求和)
1 6
16 (八进制)
八进制–>二进制
和上面的转换思想相反,一个八进制数可以表示三个二进制位,用8421码依次展开,不足位补0,得到二进制数,再拼起来。
例:0216
原码:
2 1 6
2->010 (用8421码展开,得出对应的二进制数)
1->001
6->110
得出0216的二进制表示为10 001 110
二进制–>十六进制
一个十六进制数由四个二进制数组成(2^4=16),取四合一。
例:0b100101100
原码:
0001 0010 1100
0001->1
0010->2
1100->8+4=12=C
得到0b100101100的十六进制表示为12C
十六进制–>二进制
例:0x226
原码:
2 2 6
2->010
2->010
6->110
得到0x226的二进制表示为10010110
3.十进制和八进制,十六进制的相互转换
十进制–>八进制,十六进制
间接法:
先把十进制转换为二进制,再把二进制转换为相应的八进制和十六进制的数即可。
直接法
除积倒取余法
八进制,十六进制–>十进制
方法为:把八进制、十六进制数按权展开、相加即得十进制数
还有就是,可以先把八进制和十六进制转换为二进制,再转换为十进制也可以。
4.八进制和十六进制的相互转换
第一种:他们之间的转换可以先转成二进制然后再相互转换。
第二种:他们之间的转换可以先转成十进制然后再相互转换。
以上即为本人对进制转换的相关复习,如有错误,欢迎指出,小生不才,还请大家多多指教。