数学进制之间的转换公式是什么啊?

1个回答

  • 数制 计算机中采用的是二进制,因为二进制具有运算简单,易实现且可靠,为逻辑设计提供了有利的途径、节省设备等优点,为了便于描述,又常用八、十六进制作为二进制的缩写.一般计数都采用进位计数,其特点是:(1)逢N进一,N是每种进位计数制表示一位数所需要的符号数目为基数.(2)采用位置表示法,处在不同位置的数字所代表的值不同,而在固定位置上单位数字表示的值是确定的,这个固定位上的值称为权.在计算机中:D7 D6 D5 D4 D3 D2 D1 D0 只有两种0和1 数制转换 不同进位计数制之间的转换原则:不同进位计数制之间的转换是根据两个有理数如相等,则两数的整数和分数部分一定分别相等的原则进行的.也就是说,若转换前两数相等,转换后仍必须相等.有四种进制 十进制:有10个基数:0 9 ,逢十进一 二进制:有2 个基数:0 1 ,逢二进一 八进制:有8个基数:0 7 ,逢八进一 十六进制:有16个基数:0 9,A,B,C,D,E,F (A=10,B=11,C=12,D=13,E=14,F=15) ,逢十六进一 1、数的进位记数法 N=a n-1*p n-1+a n-2*p n-2+…+a2*p2+a1*p1+a0*p0 2、十进制数与P进制数之间的转换 ①十进制转换成二进制:十进制整数转换成二进制整数通常采用除2取余法,小数部分乘2取整法.例如,将(30)10转换成二进制数.将(30)10转换成二进制数 2| 30 ….0 ----最右位 2 15 ….1 2 7 ….1 2 3 ….1 1….1 ----最左位 ∴ (30)10=(11110)2 将(30)10转换成八、十六进制数 8| 30 ……6 ----最右位 3 ----最左位 ∴ (30)10 =(36)8 16| 30 …14(E)----最右位 1 ----最左位 ∴(30)10 =(1E)16 3、将P进制数转换为十进制数 把一个二进制转换成十进制采用方法:把这个二进制的最后一位乘上20,倒数第二位乘上21,……,一直到最高位乘上2n,然后将各项乘积相加的结果就它的十进制表达式.把二进制11110转换为十进制 (11110)2=1*24+1*23+1*22+1*21+0*20= =16+8+4+2+0 =(30)10 把一个八进制转换成十进制采用方法:把这个八进制的最后一位乘上80,倒数第二位乘上81,……,一直到最高位乘上8n,然后将各项乘积相加的结果就它的十进制表达式.把八进制36转换为十进制 (36)8=3*81+6*80=24+6=(30)10 把一个十六进制转换成十进制采用方法:把这个十六进制的最后一位乘上160,倒数第二位乘上161,……,一直到最高位乘上16n,然后将各项乘积相加的结果就它的十进制表达式.把十六制1E转换为十进制 (1E)16=1*161+14*160=16+14=(30)10 3、二进制转换成八进制数 (1)二进制数转换成八进制数:对于整数,从低位到高位将二进制数的每三位分为一组,若不够三位时,在高位左面添0,补足三位,然后将每三位二进制数用一位八进制数替换,小数部分从小数点开始,自左向右每三位一组进行转换即可完成.例如:将二进制数1101001转换成八进制数,则 (001 101 001)2 | | | ( 1 5 1)8 ( 1101001)2=(151)8 (2)八进制数转换成二进制数:只要将每位八进制数用三位二进制数替换,即可完成转换,例如,把八进制数(643.503)8,转换成二进制数,则 (6 4 3 .5 0 3)8 | | | | | | (110 100 011 .101 000 011)2 (643.503)8=(110100011.101000011)2 4、二进制与十六进制之间的转换 (1)二进制数转换成十六进制数:由于2的4次方=16,所以依照二进制与八进制的转换方法,将二进制数的每四位用一个十六进制数码来表示,整数部分以小数点为界点从右往左每四位一组转换,小数部分从小数点开始自左向右每四位一组进行转换.(2)十六进制转换成二进制数 如将十六进制数转换成二进制数,只要将每一位十六进制数用四位相应的二进制数表示,即可完成转换.例如:将(163.5B)16转换成二进制数,则 ( 1 6 3 .5 B )16 | | | | | (0001 0110 0011.0101 1011 )2 (163.5B)16=(101100011.01011011)2 十进制转二进制:用2辗转相除至结果为1 将余数和最后的1从下向上倒序写 就是结果 例如302 302/2 = 151 余0 151/2 = 75 余1 75/2 = 37 余1 37/2 = 18 余1 18/2 = 9 余0 9/2 = 4 余1 4/2 = 2 余0 2/2 = 1 余0 故二进制为100101110 二进制转十进制 从最后一位开始算,依次列为第0、1、2...位 第n位的数(0或1)乘以2的n次方 得到的结果相加就是答案 例如:01101011.转十进制:第0位:1乘2的0次方=1 1乘2的1次方=2 0乘2的2次方=0 1乘2的3次方=8 0乘2的4次方=0 1乘2的5次方=32 1乘2的6次方=64 0乘2的7次方=0 然后:1+2+0 +8+0+32+64+0=107. 二进制01101011=十进制107. 二进制转为 8 进制,可以 3 位二进制位编为一组(不够左侧补 0),然后从右边开始每三位按如下方式替换:000 --- 0,001 --- 1,010 --- 2,011 --- 3,100 --- 4,101 --- 5,110 --- 6,111 --- 7.比如转换二进制数 1110101010100 那么分组为 001 110 101 010 100 按照转换方法对应转换 1 6 5 2 4 所以1110101010100(2) = 16524(8) 又如转换为 16 进制 0000 --- 0,0001 --- 1,0010 --- 2,0011 --- 3 0100 --- 4,0101 --- 5,0110 --- 6,0111 --- 7 1000 --- 8,1001 --- 9,1010 --- A,1011 --- B 1100 --- C,1101 --- D,1110 --- E,1111 --- F 此时分组为 4 位二进制数为一组 比如转换二进制 0101010100101011010,分组:0010 1010 1001 0101 1010 2 A 9 5 A