数数基 权 表特十进制0~1二进制0~2 八进制0~8 8o,81,82,… 十六进制0~9,A~F,a~f 116o,161,162,… 10o,101,102,… 2o,21,22,… 十六进制:八进制:1011=14275=481AE=8?83?+2163?2282+1 +7?162?2181 +10+5??8o161?16o 十进制:二进制:4956= 4??23103+0+9?? +1102? +5+1?101?2o+6 ?+1410o 逢十进逢二进逢八进逢十六进二、数制转换 大家都知道,计算机中采用的是二进制,但用计算机解决实际问题时对数值的输入输出通常使用十进制,这就有一个十进制向二进制转换或由二进制向十进制转换的过程。也就是说,在使用计算机进行数据处理时首先必须把输入的十进制数转换成计算机所能接受的二进制数;计算机在运行结束后,再把二进制数转换为人们所习惯的十进制数输出。 这种将数由一种数制转换成另一种数制称为数制间的转换。下面我们结合实例来讲解一下。 1、二进制、八进制、十六进制转换成十进制 方法:按权相加 例543210(111011)(59)2?1?2?1?2?1?2?0?2?1?2?1?2?10例210(136)(94)8?1?8?3?8?6?8?10例3210(1F2A)(7978)16?1?16?15?16?2?16?10?16?10 第 5 页 共 11 页
2、十进制转换成十六进制、二进制、八进制 大家看一下前面我们讲的按权相加法中,权的值在小数点左边和小数点右边是不一样的。所以,十进制数转换为二进制数时,整数和小数的转换方法也不同,一般我们先把十进制数的整数部分和小数部分分别转换后,再加以合并。我们先来讲一下转换的方法,再结合实例来看一下。 (1)十进制整数转换为二进制整数 十进制整数转换为二进制整数采用\除2取余,逆排序\法。具体做法是:用2去除十进制整数,可以得到一个商和余数;再用2去除商,又会得到一个商和余数,如此进行,直到商为零时为止,然后把所有余数按逆序排列,也就是把先得到的余数作为二进制数的低位有效位,后得到的余数作为二进制数的高位有效位,依次排列起来。这就是所谓“除2取余,逆序排列”。 例:将一个十进制数13转换为二进制数。 2 2 13 6 2 1 1 0 1 1 结果为:1101 2 3 3、二进制转换成八进制:从右向左,每3位一组(不第 6 页 共 11 页
足3位左补0),转换成八进制。 八进制转换成二进制: 用3位二进制数代替每一位八进制数 例 (1101001)2=(001,101,001)2=(151)8 例 (246)8=(010,100,110)2=(10100110)2000 ~ 0 001 ~ 1 010 ~ 2 011 ~ 3 100 ~ 4 101 ~ 5 110 ~ 6 111 ~ 7 练习 1.十进制数189转换成二进制,八进制,十六进制分别为? (189)10 = ( )2 = ( )8 = ( )16 由此类推,八进制数、十六进制数与十进制之间的转换也是同法。 总结:二、八、十六进制数转换成十进制数——“按权相加法”;十进制数转换成二、八、十六进制数——整数部分“除基取余,逆排序”;小数部分“乘基取整,顺排序”。 第 7 页 共 11 页
4、二进制数转换成八、十六进制数 参照数制对照表,因为一个八进制数可以用三位二进制数表示;一个十六进制数可以用四位二进制数表示 (1)二进制转换为十六进制 以小数点为基准,整数部分从右至左每四位一组划分开,前面不足四位的补零,小数部分从左至右每四位一组划分开,后面不足四位的补零,按组对表转换即可。 例:(1000110101011.1011)2 0001 0001 1010 1011 . 1011 ↓ ↓ ↓ ↓ ↓ 1 1 A B . B 所以:(1000110101011.1011)2 =(11AB.B)16 总结:此法为“四位并一位法” (2)二进制转换为八进制 以小数点为基准,整数部分从右至左每三位一组划分开,前面不足三位的补零,小数部分从左至右每三位第 8 页 共 11 页