二进制数与十进制及其它进制数的转换
(2008-10-12 20:49:38)
标签:
杂谈 |
一个二进制数具有下列两个基本特点:
• 两个不同的数字符号,即0和1。
• 逢二进一。
一般我们用( ) 角标表示不同进制的数。例如:十进制用( )10表示,二进制数用( )2表示。在微机中,一般在数字的后面,用特定字母表示该数的进制。例如:B —二进制、D —十进制( D可省略)、 O —八进制、H —十六进制。
二进制与其它数制
1. 十进制(十进位计数制)
具有十个不同的数码符号0、1、2、3、4、5、6、7、8、9,其基数为10;十进制数的特点是逢十进一,例如:
( 1010 )10 = 1×103+0×102+1×101+0×100
2. 八进制(八进位计数制)
具有八个不同的数码符号0、1、2、3、4、5、6、7,其基数为8;八进制数的特点是逢八进一,例如:(1010)8 = 1×83+0×82+1×81+0×80=(520)10
3. 十六进制(十六进位计数制)
具有十六个不同的数码符号0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F,其基数为16,十六进制数的特点是逢十六进一,例如:
(1010)16 = 1×163+0×162+1×161+0×160=(4112)10
表1-1 四位二进制数与其它数制的对照
二进制
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
1111
1. 十进制数与二进制数之间的转换
(1) 十进制整数转换成二进制整数
把一个十进制整数转换为二进制整数的方法如下:
把被转换的十进制整数反复地除以2,直到商为0,所得的余数(从末位读起)就是这个数的二进制表示。简单地说,就是“除2取余法”。
例如,将十进制整数(156)10转换成二进制整数的方法如下:
2
2
2
0
于是,(156)10=(1001110) 2 。知道十进制整数转换成二进制整数的方法以后,了解十进制整数转换成八进制或十六进制就很容易了。十进制整数转换成八进制整数的方法是“除8取余法”,十进制整数转换成十六进制整数的方法是“除16取余法”。
(2) 十进制小数转换成二进制小数
十进制小数转换成二进制小数是将十进制小数连续乘以2,选取进位整数,直到满足精度要求为止。简称“乘2取整法”。
例:
将十进制小数(0.8125) 10转换成二进制小数的方法如下:
0 . 8 1 2 5
×) 2
1 . 6 2 5 0 整数=1
0 . 6 2 5 0
×) 2
1 . 2 5 0 0 整数=1
0 . 2 5 0 0
×) 2
0 . 5 0 0 0 整数=0
×) 2
1 . 0 0 0 0
×) 2
1 . 0 整数=1
将十进制小数0.8125连续乘以2,把每次所进位的整数,按从上往下的顺序写出。于是,(0.8125)10=(0.1101)2
了解了十进制小数转换成二进制小数的方法以后,那么,了解十进制小数转换成八进制小数或十六进制小数就很容易了。十进制小数转换成八进制小数的方法是“乘8取整法”,十进制小数转换成十六进制小数的方法是“乘16取整法”。
(3) 二进制数转换成十进制数
把二进制数转换为十进制数的方法是,将二进制数按权展开求和即可。
例如,将(111011.101)2 转换成十进制数的方法如下:(111011.101)2
=1×26+1×25+1×24+0×23+0×22+1×21+1×20+1×2-1+0×2-2+1×2-3
于是,(1110011.101)2=64+32+16+2+1+0.5+0.125=(115.625)10。
同理,非十进制数转换成十进制数的方法是,把各个非十进制数按权展开求和即可。如把二进制数(或八进制数或十六进制数)写成2(或8或16)的各次幂之和的形式,然后再计算其结果。
2. 二进制数与八进制数之间的转换
二进制数与八进制数之间的转换十分简捷方便,他们之间的对应关系是,八进制数的每一位对应二进制数的三位。
(1) 二进制数转换成八进制数
由于二进制数和八进制数之间存在特殊关系,即81=23,因此转换方法比较容易,具体转换方法是:将二进制数从小数点开始,整数部分从右向左3位一组,小数部分从左向右3位一组,不足三位用0补足即可。
例:
将(11110101010.11111)2转换为八进制数的方法如下:
0 1 1
↓
3
于是,(11110101010.11111)2=(3652.76)8
(2) 八进制数转换成二进制数
方法为:以小数点为界,向左或向右每一位八进制数用相应的三位二进制数取代,然后将其连在一起即可。
例:
将(5247.601)8转换为二进制数的方法如下:
5
↓
1 0 1
于是,(5247.601)8=(101010100111.110000001)2
3. 二进制数与十六进制数之间的转换
(1) 二进制数转换成十六进制数
二进制数的每四位,刚好对应于十六进制数的一位( 161=24),其转换方法是,将二进制数从小数点开始,整数部分从右向左4位一组,小数部分从左向右4位一组,不足四位用0补足,每组对应一位十六进制数即可得到十六进制数。
例:
将二进制数(111001110101.100110101)2 转换为十六进制数。
解:1 1 1 0
↓
E
于是,(111001110101.100110101)2=(E75.9A8)16
例:
将二进制数(101111101111110)2 转换为十六进制数。
解:0 1 0 1
↓
5
于是,(101111101111110)2=(5F7E)16
(2) 十六进制数转换成二进制数
方法为以小数点为界,向左或向右每一位十六进制数用相应的四位二进制数取代,然后将其连在一起即可。
例:
将(7FE.11)16转换成二进制数。
解:7
↓
0111
于是,(7FE.11)16=( 11111111110.00010001)2
1.整数的表示
2.实数的表示