二进制与十进制、八进制、十六进制之间的转换各进制的基数、符号各数制的权十进制与二进制的相互转换二进制与八进制的相互转换二进制转与十六进制的相互转换其他进制转换为十进制二进制、八进制、十六进制之间的转换各进制的基数、符号1.十进制日常生活中最常见的是十进制数,用十个不同的符号来表示:0、1、2、3、4、5、6、7、8、9。基为:10运算规则:逢十进一,借一当十在十进制数的后面加大写字母D以示区别。2.二进制二进制数只有两个代码“0”和“1”,所有的数据都由它们的组合来实现。基为:2运算规则:“逢二进一,借一当二”的原则。在二进制数的后面加大写字母B以示区别。3.八进制使用的符号:0、1、2、3、4、5、6、7;运算规则:逢八进一;基为:8在八进制数据后加英文字母“O”,4.十六进制使用的符号:采用0~9和A、B、C、D、E、F六个英文字母一起共十六个代码。运算规则:逢十六进一基为:16在十六进制数据后加英文字母“H”以示分别。各数制的权各数制中整数部分不同位的权为“基的n-1次方(n为数值所在的位数,n的最小值取1)”,小数部分不同位的权值为“基的-n次方”。一个十进制数(135.7)可表示为:135=1×102+3×101+5×100+7×10-1如:十进制中,各位的权为10n-1二进制中,各位的权为2n-1十六进制中,各位的权为16n-11.十进制转换为二进制整数部分:按“倒序除2取余法”的原则进行转换。即用2连续去除十进制数,直至商等于0为止,逆序排列余数即可得到与该十进制相对应的二进制数各位的数值。十进制与二进制的相互转换小数部分:按“顺序乘2取整法”的原则进行转换。小数乘以目标数制的基数,第一次相乘结果的整数部分为目的数的最高位,将其小数部分再乘基数依次记下整数部分,反复进行下去,直到乘积的小数部分为“0”,或满足要求的精度为止。(如2-5,只要求到小数点后第五位)。如(0.8125D)转成二进制的过程是:十进制转换成8进制、16进制,与转成2进制的方法相同!但基数是8或16!0.8125D×2=1.625得整数部分:10.625D×2=1.25得整数部分:10.25D×2=0.5得整数部分:00.5D×2=1.0得整数部分:1所以0.8125D=0.1101B22362118……………0259……………0229……………1214……………127……………023……………121……………10……………1二进制数的低位二进制数的高位【例1】将(236)D转换成二进制。转换过程如图1所示。图1将十进制数转变成二进制数【例2】将(81.65)D转换成二进制,要求精度为小数点后面5位。(81.65)D=(1010001.10100)2图2小数部分转成2进制数的步骤2.二进制转换为十进制二进制数要转换成十进制数非常简单,整数部分将每一位数字乘以它的权2n-1,再以十进制的方法相加即可得到十进制数(注意,小数点右侧相邻位的权为2-1,从左向右,每移一位,幂次减1)。【例3】把二进制序列(10110.011)转成10进制数。=1×24+0×23+1×22+1×21+0×20+0×2-1+1×2-2+1×2-3=(22.375)D二进制与八进制转换转换方法:从小数点开始,将二进制数的整数和小数部分每三位分为一组,不足三位的分别在整数的最高位前和小数的最低位后加“0”补足,然后每组用等值的八进制码替代,即得八进制数。例:(11010111.0100111)2=(327.234)82.二进制数与十六进制数的相互转换由于16=24,所以在将二进制数转换成十六进制数时,从小数点开始,将二进制数的整数和小数部分每四位分为一组,不足四位的分别在整数的最高位前和小数的最低位后加“0”补足,然后每组用等值的十六进制码替代,即得目的数。十六进制数转换成二进制数时正好相反,一位十六进制数用四位二进制数来替换。对于有小数的数,要分小数和整数部分处理。二进制转与十六进制的相互转换例:(111011.10101)2=(3B.A8)H图3二进制转成16进制八进制、十六进制与十进制的相互转换八进制、十六进制数与十进制数相互转换时,有两种方法。方法一,可以分成两步完成:将待转换的数转换成二进制,然后再将二进制数转换成十进制的数。方法二,直接进行转换。只需将各代码与相应的权相乘,然后用十进制的方法相加就可以实现。其他进制数转换成十进制