各种数位进制的转换.ppt
最近在研究C语言,因为要用到各进制间转换,所以收集了一些资料这是一节“前不着村后不着店”的课。不同进制之间的转换纯粹是数学上的计算。不过,你不必担心会有么复杂,无非是乘或除的计算。生活中其实很多地方的计数方法都多少有点不同进制的影子。比如我们最常用的10进制,其实起源于人有10个指头。如果我们的祖先始终没有摆脱手脚不分的境况,我想我们现在一定是在使用20进制。至于二进制没有袜子称为0只袜子,有一只袜子称为1只袜子,但若有两袜子,则我们常说的是:1双袜子。生活中还有:七进制,比如星期。十六进制,比如小时或“一打”,六十进制,比如分钟或角度我们找到问号字符(?)的ASCII值是63,那么我们可以把它转换为八进值:77,然后用 77来表示?。由于是八进制,所以本应写成 77,但因为C,C+规定不允许使用斜杠加10进制数来表示字符,所以这里的0可以不写。,进制的转换,各种数位进制的转换,专题讲座,万祥讲解,十进制,6x101十8 x 100十2x10-1十5x10-2,十进制数是用十个不同的计数符号(如阿拉伯数字0、1、2、3、4、5、6、7、8、9)和“逢十进一”的计数规则来表示数的。十进制数是我们日常广为使用的一种数制。,权:十进制每个位的位值,又称“权”,均是基数10的某次幂。例如:68.25按权展开的形式可写成:,定义,计数,十六进制数,十六个不同的计数符号0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F和“逢十六进一”的计数规则来表示数的。十六进制数的代表符号是H。,权:十六进制各个位的权,均是基数16的某次幂。例如:1A7.4(H)按权展开的形式可写成:,1A7.4(H)=1x162十A x 161十7x160十4x16-1=1X256+10X16+7X1+4X1/16=423.25,定义,计数,运算,8C5A-39E4=5276,5 2 7 6,二进制数,二进制数是用0、1两个符号和“逢二进一”的计数规则来表示数的。二进制数的代表符号为B。,权:二进制各个位的权,均是基数2的某次幂。例如:101.1(B)按权展开的形式可写成:,1x22十0 x 21十1x20十1x2-1=4+0+1+0.5=5.5(10),定义,计数,十进制数转换为二进制数,整数转换方法,采用除2取余数,直至商为0为止,二进制数转换为十进制数,方法,二进制数按书展开,计算其总值就可求得结果为十进制的数。,练习,(1101001)2(300)10,1011101.0,运算,100110.1十110110.1,100110.1=1X25+0X24+0X23+1X22+1X21+0X20+1X2-1=32+0+0+4+2+0+0.5=38.5110110.1=1X25+1X24+0X23+1X22+1X21+0X20+1X2-1=32+16+0+4+2+0+0.5=54.51011101.0=1X26+0X25+1X24+1X23+1X22+0X21+1X20+0X2-1=64+0+16+8+4+0+1+0=93,16进制转换为二进制,1 00012 00103 00114 01005 01016 01107 01118 1000,9 1001A 1010B 1011C 1100D 1101E 1110F 1111,二进制数转换为十六进制数,首先,以小数点为界,整数部分向左,小数部分向右,每四位二进制数划分为一组,如果位数不足四位时,整数部分在高位的左边添0,小数部分在低位的右边添0,补足四位;其次,按对应位置写出与每四位二进制数等值的十六进制数,小数点位置不变。这样,就得到转换后的十六进制数。,方法,6,6,十六进制数转换为二进制数,将每位十六进制数用相应的四位二进制数来代替,小数点位置不动,方法,十六进制数与十进制数之间的转换,把十六进制数转换成十进制数,则先把待转换的十六进制数变为 二进制数,然后把二进制数转换成十进制数形式。例如:2D73(H)=10110101110011(B)=(12391875)。十进制数欲转换成十六进制数,须先把待转换的十进制数变为二进制数,然后把二进制数转换成十六进制数形式。例如:4625=10111001(B)=2E4(H)。,10,十六进制数与十进制数之间的转换,须把二进制数作为转换的桥梁,分两步来完成。,方法,各进制之间的对应关系,祥哥讲解,QQ:596450726编程技术讨论群(1)65806016(已满)编程技术讨论群(2)165450839(欢迎学习),新浪微博:http:/博客里面有许多资料共享给大家啦,