《各种进制之间的转换方法》由会员分享,可在线阅读,更多相关《各种进制之间的转换方法(6页珍藏版)》请在金锄头文库上搜索。
1、各种进制之间的转换方法 - 各种进制之间的转换方法 6 6 . 5 4 = 66.54Q 八进制数36.24Q转换成二进制数: 011 110 . 010 100 = 11110.0B 八进制数和二进制数对应关系表 八进制Q 0 1 2 3 4 5 6 7 二进制B 000 001 010 011 100 110 111 二进制数B转换成十六进制数H:以小数点为分界限,整数局部从低位到高位,小数局部从高位到低位,每4位二进制数为一组,缺乏4位的,小数局部在低位补0,整数局部在高位补0,然后用1位十六进制的数字来表示,采用十六进制数书写的二进制数,位数可以减少到原来的1/4。 例:二进制数转换成
2、十六进制数: 010.100111B = 1 0 0 . 1001 1100B B 5 A . 9 C = B5A.9CH 0 1. 1111 1110 = 01.1111111B 十六进制数、十进制数和二进制数对应关系表 十六进制H 十进制D 二进制B 0 0 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 A 10 B 11 C 12 D 13 E 14 F 15 0000 0001 0010 0011 0100 0 0110 0111 1000 1001 0 1 1100 1 1110 1111 八进制数Q转换成十六进制数H:八进制数Q和十六进制数H的转换要通过二
3、进制数B来实现,即先把八进制数Q转换成二进制数B,再转换成十六进制数H。 例:八进制数转换成十六进制数: 7402.45Q = 111 100 000 010 . 100 B = 111100000010.100B = 1111 0000 0010 . 1001 0100B = F 0 2 . 9 4H = F02.94H 十六进制数转换成八进制数: 1B.EH = 0001 1 . 1110B = 11.111B = 011 011 . 111B = 3 3 . 7Q = 33.7Q 二进制数B转换成十进制数D:利用二进制数B按权展开成多项式和的表达式,取基数为2,逐项相加,其和就是相应的十
4、进制数。 例:二进制数转换成十进制数: 110010.1B = 12512402302212102012-1 = 321620.5 = 50.5 求8位二进制数能表示的最大十进制数值: 最大8位二进制数是11111111B 11111111B = 127126125124123122121120 = 255 十进制数D转换成二进制数B:十进制数转换成二进制数时,整数局部和小数局部换算算法不同,需要分别进展。整数局部用除基取余法转换,小数局部用乘基取整法转换。 除基取余法整数局部:需要转换的整数除以基数2,取其商的余数就是二进制数最低位的系数K0,将商的整数局部继续除以基数2,取其商的余数作二进
5、制数的高一位的系数K1,-,这样逐次相除直到商为0,即得到从低位到高位的余数序列,便构成对应的二进制整数。 例:十进制数233转换成二进制数: 竖式表示: 十进制整数 余数 系数Ki 位 2233 2116 1 K0 最低位 258 0 K1 229 0 K2 214 1 K3 27 0 K4 23 1 K5 21 1 K6 0 1 K7 最高位 线图表示: 位: 最低位 最高位 从最后一次余数开场向上向左顺序即从最高位向最低位写出,得到换算结果:233D = 11001B 乘基取整法小数局部:把要转换的小数乘以基数2,取其积的整数局部作对应二进制小数的最高位系数K-1,将积的小数局部继续乘以
6、基数2,新得到积的整数局部作二进制下一位的系数K-2,-,这样逐次乘基,即得到从高位到低位积的整数序列,便构成对应的二进制小数。 例:十进制小数0.8125转换成二进制小数: 竖式表示: 十进制小数 积的整数局部 系数 位 0.8125 2 1.6250 1 K-1 最高位 0.6250 2 1.250 1 K-2 0.25 2 0.50 0 K-3 2 1.0 1 K-4 最低位 线图表示: 积的整数局部: 1 1 0 1 位: 最高位 最低位 将乘积的整数局部从上到下左到右顺序写出,得到换算结果:0.8125D = 0.1B 综合结论:一个既有整数又有小数局部的十进制数被送入计算机后,转换
7、将分三步进展:1、由机器把整数局部按除基取余法进展转换;2、小数局部按乘基取整法进展转换;3、将已转换的两局部合在一起就是所求的二进制数值。但并不是所以的十进制小数都能转化成有限位的二进制小数,有时整个过程会无限进展下去。例如:0.3D=0.0011001100B此时,可以根据精度的要求并考虑计算机字长位数取一定位数后,“0舍1入”,得到原十进制数的二进制近似值。 例:求14.4375输入计算机后转换成二进制数的形式: 解 14D = 1110B 0.4375D = 0.0111B 14.4375D = 1110.0111B 十进制数与任意进制的转换:1、任意进制数转换成十进制数的方法和二进制
8、数转换成十进制数一样,把任意进制数按权展开成多项式和的表达式,再把各位的权与该位上系数相乘,乘积逐项相加,其和就是相应的十进制数。2、十进制数转换成任意进制数时,整数局部用“除基取余法”,小数局部用“乘基取整法”,然后将得到的任意进制的整数与小数拼接,即为转换的最后结果。 例:十二进制数4602.3转换成十进制数: 解 4602.312 = 4123612201212120312-1 = 6912+864+0+2+0.25 = 7778.25D 将414.7D转换成十六进制,小数精度取2位: 解 整数局部 取余数 系数 小数局部 取整数 系数 16414 0.7 1625 E K0 16 161 9 K1 11.2 B K-1 0.2 0 1 K2 16 3.2 3 K-2 0.2 16 3.2 3 K-3 转换结果:414.7D = 19E.B3H 第 页 共 页