怎么把16进制转换为10进制

6 6/2 3 0

手写转换

十六进制在线转换_十六进制在线转换字符串十六进制在线转换_十六进制在线转换字符串


十六进制在线转换_十六进制在线转换字符串


1把十进制数除以16,保留余数部分。得到余数以后就不要再往下除得小数了。

2写下余数部分,在右下角标上16。比如剩下的是11,写成B,右下方写16。查查如何理解十六进制数来了解一下十六进制所用的符号。

3把之前的整数商再除以16,得到余数部分,然后再在这个余数右下角标上16

4重复以上步骤,直到得到一个小于16的商。每一次都把余数右下方标上16,注意我们也需要写下得到的商(即小于16的商)

,并转为十六进制。

5把余数和的商从左到右按顺序写下,最右是商。得到的十六进制就是这个数,从右往左读。比如读作2F34,实际上的值是43F2。

4个2进制位为一个16进制数,2进制1111为16进制F,2进制中千位的1=8,百位的1=4,十位的1=2,个位的1=1,将各个位的数作相应转换再相加,的到的数就是10进制数0-15,可轻松转换成16进制。如01011100,可看成是两组2进制数0101和1100,则这个数就是16进制的5C。

10转16:

100以内一点的10转16心算比较快,复杂的用“计算器”算了。10转16用传统的计算方式可以了,就是大于15小于256的10进制数除以16为的值为十位的16进制数,其余数为个位的16进制数,没余数则个位为0。如61的16进制是3D第二:直接法—把十进制转八进制或者十六进制按照除8或者16取余,直到商为0为 止。,61除以16得3余13,3作十位数,13转成D为各位数。

16转213/1610:

用相反的道理,将十位数乘以16加上个位数。如5A,将5乘以16得80,加上A的10进制10,结果是90。

二进制如何转换成十六进制?

0 1

1、二进制转换为十六进制方法:

0,16,2进制的互相转换

取四合一法,即从二进制的小数点为分界点,向左(向右)每四位取成一位,接着将这四位二进制按权相加,得到的数就是一位十六位二进制数,然后,按顺序进行排列,小数点的位置不变,得到的数字就是我们所求的十六进制数。如果向左(向右)取四位后,取到()位时候,如果无法凑足四位,可以在小数点最左边(最右边),即整数的位(位)添0,凑足四位。

(1)例:将二进制11101001.1011转换为十六进制

得到结果:将二进制11101001.1011转换为十六进制为E9.B

(2) 例:将101011.101转换为十六进制

得到结果:将二进制101011.101转换为十六进制为2B.A

2、将十六进制转换为二进制方法:

取一分四法,即将一位十六进制数分解成四位二进制数,用四位二进制按权相加去凑这位十六进制数,小数点位置照旧。

(1)例:将十六进制6E.2转换为二进制数

得到结果:将十六进制6E.2转换为二进制为01101110.0010即110110.001

附上十进制、二进制、十六进制转化的对照表。

扩展资料:

二进制与八进制之间的转换:

首先,我们需要了解一个数学关系,即2^3=8,2^4=16,而八进制和十六进制是用这个关系衍生而来的,即用三位二进制表示一位八进制,用四位二进制表示一位十六进制数。

接着,记住4个数字8、4、2、1(2^3=8、2^2=4、2^1=2、2^0=1)。现在我们来练习二进制与八进制之间的转换。

1、二进制转换为八进制方法:

取三合一法,即从二进制的小数点为分界点,向左(向右)每三位取成一位,接着将这三位二进制按权相加,得到的数就是一位八位二进制数,然后,按顺序进行排列,小数点的位置不变,得到的数字就是我们所求的八进制数。如果向左(向右)取三位后,取到()位时候,如果无法凑足三位,可以在小数点最左边(最右边),即整数的位(位)添0,凑足三位。

(1)例:将二进制数101110.101转换为八进制

得到结果:将101110.101转换为八进制为56.5

(2) 例:将二进制数1101.1转换为八进制

得到结果:将1101.1转换为八进制为15.4

2、将八进制转换为二进制

方法:取一分三法,即将一位八进制数分解成三位二进制数,用三位二进制按权(31.5)(八) 整数部分:从后往前每一位按十进制转化方式转化为三位二进制数,缺位处用0补充 则有: 1---->1---->001 3---->11 然后我们将结果按从下往上的顺序书写就是:11001,那么这个11001就是八进制31的二进制形式 说明,关于十进制的转化方式我这里就不再说了,上一篇文章我已经讲解了! 小数部分:从前往后每一位按十进制转化方式转化为三位二进制数,缺位处用0补充 则有: 5---->101 然后我们将结果按从下往上的顺序书写就是:101,那么这个101就是八进制5的二进制形式 所以:(31.5)(八)=(11001.101)(二)相加去凑这位八进制数,小数点位置照旧。

(1)例:将八进制数67.54转换为二进制

将八进制数67.54转换为二进制数为110111.101100,即110111.1011

从上面这道题可以看出,计算八进制转换为二进制,首先,将八进制按照从左到右,每位展开为三位,小数点位置不变;然后,按每位展开为22,21,20(即4、2、1)三位去做凑数,即a×22+ b×21 +c×20=该位上的数(a=1或者a=0,b=1或者b=0,c=1或者c=0),将abc排列就是该位的二进制数;接着,将每位上转换成二进制数按顺序排列;,就得到了八进制转换成二进制的数字。

参考资料:

十六进制如何转换成二进制

设有一个十六进数 2AF5, 那么如十进制转换为十六进制:十六进制数(String型)=Hex$(十进制)何换算成10进制呢?

将十六进制数转换为二进制数,只需将每一位的十六进制数转换为相应的4位二进制数,然后组合起来即可。

商 余

所以与十六进制数BC等值的二进制数是10111100,应该选择B项。

扩展资料

二进制与十六进制之间的转换:

1、二进制数转换成十六进制数

由于2的4次方=16,所以依照二进制与八进制的转换方法,将二进制数的每四位用一个十六进制数码来表示,整数部分以小数点为界点从右往左每四位一组转换,小数部分从小数点开始自左向右每四位一组进行转换。

2、十六进制转换成二进制数

如将十六进制数转换成二进制数,只要将每一位十六进制数用四位相应的二进制数表示,即可完成转换。

与十六进制数BC等值的二进制数是10111100,应该选择B项。

十六进制怎么转换成二进制?

在进行十六进制和二进制的转换之前,我们应该先熟练掌握16位数对应进制的具体表示方法,实在不行就反复默背勤加练习,做到这一步,接下来就很简单了,遇到十六进制与二进制的转换问题时,只需要将0/1/2/3/4/5/6/7/8/9/A/B/C/D/E/F每一位“十六进制数”用对应的四位“二进制数”表示,就完成了转换;例如:BF=10111111;

二进制如何转换成十六进制?

1、参照二进制和八进制之间的转换规律,二进制要转换十六进制,只需要将每四位“二进制数”用相对应的十六进制数表示即可,以小数点为界限,整数部分自左往右,每四位一组完成转换,小数部分同样也是自左往右,每四位一组完成转换;

3、各种进制,都有一定规律可寻,例如基数为10的十进制,数码由0-9组成,计数规律为逢“十进一”;二进制多被用于计算机编程,只有0和1两个数字组成,基本运算规律为“逢二进一”。

毫不夸张地讲,数学的应运充斥在人类生活的方方面面,各种网络购物平台的优惠规则、生活理财都需要有数学基础知识的支撑,如果你觉得数学很枯燥,那不妨把学到的知识和现实生活相结合,去发现他们的奇妙用途吧!

十六进制数转换为二进制数的步骤:每一位十六进制数,转换为四位二进制数。

1. 二进制1000专换成16进制用8421转换法,即自左向右,81+40+20+10=0x8,这是所有十六进制转二进制的通用转换方式,位对位对齐转换,分别乘以8421,然后相加。如果二进制数不够位,应在整数位左边或小数位右边用0补足,凑足4的倍数。当然整数部分和小数部分要分别转换。如:将111100转换为16进制,用8421转换法,但只能对齐二进制的低四位,高二位无法对齐的情况下补0,变为00111100B,再用8421:08+04+12+11+18+41+02+01=0x3C。注意:十六进制数的一位相当于二进制数的四位。

2. 十六进制转换二进制:用8421拼凑法,首先要清楚的是:四位二进制数表示十六进制的一位,根据以上例子,转换0x3C。首先转换二进制的高四位,也就是十六进制3这个数,可以将8421四位数相加拼凑,如果能得出3,就将该位设置为1,其余为0。这四个数字中,2+1才能得到3,因此,转换为二进制就是0011。低四位,十六进制数C(十进制数12),只有8+4=12,设置为1,其余为0,就得到1100,高低位结合起来,二进制数为00111100.

结合你的例子,转换0x8,8421中8与其相匹配,直接设该位为1,其余为0,得1000B。

还有一种比较简单的方法,楼主可以直接查询BCD码,任何一个十六进制数都可以通过查询BCD码得以转换。

另外,楼上的朋友转换的数并非十六进制,而是十进制。

这是基本题 你看看方法:

十六进制B是十进制11;十六进制C是十进制12;二进制到十进制转换先每四位一组分开,每一组自低位向高位数的位次(自后后向前的位次)自0开始数,位次数作为2的幂再与所在位的数相乘()然后再四位相加 即为十进制,二进制到十进制为连续除2取余倒读

例如:二进制1100 化十进制为02^0+02^1+12^2+12^3=12(B)

二进制1101 化十进制为12^0+02^1+12^2+12^3=13(C)

十六进制的每个数位对应二进制的4个数位,C是12,二进制是1100,B是11,二进制是1011 。

B

先把这个八位数分成两个四位的,前四位1011加起来为B,后四位1100加起来为C,即为十六进制数BC,故选B。

用科学计算器输进去一转换就行了

16进制换算成10进制是什么?

所以是101111、有小数点时,注意小数点的位置不变。100

十六进制转换成十进制的具体算法是:

1、首先明白16进制数(从右到左数是第0位,第1位,第2位……)的第0位的权值为16的0次方,第1位的权值为16的1次方,第2位的权值为16的2次方,依次这样排列下去。

2、明白ABCDEF表示的二进制数字分别是10,11,12,13,14,15。

3、十六进制转换成十进制的公式是:要从右到左用二进制的每个数去乘以16的相应次方,然后这些数字相加就是了。

扩展资料

第0位: 5 16^0 = 5

第1位: F 16^1 =1516^1= 240

第2位: A 16^2= 10 16^2=2560

结果就是:5 16^0 + 15 16^1 + 10 16^2 + 2 16^3 = 10997

例2:CE换算成10进制:

第0二进制转换为八进制和十六进制,主要的特点是将二进制进行拆分然后按照转换十进制来计算之后平凑合并起来,转换为八进制就以每3个分一组,转换十六进制就以每4个分一组位:E16^0=1416^0=14

第1位:C16^1=1216^1=192

(二进制转化十六进制)①01100100B②10000000B③101.1B④110111.1101B 就这几个在线等,谢谢了!

=1516^1+1516^0

二进制转16进制,采用4位二进制转换为一位十六进制的方法:

(11001011)2=12(7) + 12(6) + 02(5) + 02(4) + 12(3) + 02(2) + 12(1) + 12(0)= (203)10

例如:

①01100100B

0110 0100

然后将4位二进制转换成十进制的方式

6 4

所以个转换结果为: 64H

②10000000B

1000 0000

8 0

=80H

③101.1B

= 0101.1000B

= 5 . 8 = 5.例:2AF5换算成10进制:8H

④110111.1101B

=0011 0111 . 1101 = 3 7.D = 37.D H

后面的大H 表示 十六进制

2进制8进制10进制16进制各个之间如何进行换算?

“将商继续除以2,直到商为0……将所有余数倒序排列”用表格表示:

进制数的换算方法如下:

1. 十进制转换二进制

比如:6,如果将它转换成二进制数10进制数转换成二进制数,这是一个连续除2的过程: 把要转换的数,除以2,得到商和余数, 将商继续除以2,直到商为0。将所有余数倒序排列,得到数就是转换结果。 听起来有些糊涂?我们结合例子来说明。比如要转换6为二进制数。 “把要转换的数,除以2,得到商和余数”。 那么: 要转换的数是6, 6 ÷ 2,得到商是3,余数是0。 “将商继续除以2,直到商为0……” 现在商是3,还不是0,所以继续除以2。 那就: 3 ÷ 2, 得到商是1,余数是1。 “将商继续除以2,直到商为0……” 现在商是1,还不是0,所以继续除以2。 那就: 1 ÷ 2, 得到商是0,余数是1 “将商继续除以2,直到商为0……将所有余数倒序排列” 好极!现在商已经是0。 我们三次计算依次得到余数分别是:0、1、1,将所有余数倒序排列,那就是:110了! 6转换成二进制,结果是110。 把上面的一段改成用表格来表示,则为: 被除数 计算过程 商 余数 6 6/2 3 0 3 3/2 1 1 1 1/2 0 1 (在计算机中,÷用 / 来表示)

2. 用竖式计算: 2AF5换算成10进制:二进制转换十进制

二进制数第0位的权值是2的0次方,第1位的权值是2的1次方…… 所以,设有一个二进制数:0110 0100,转换为10进制为: 下面是竖式: 0110 0100 换算成 十进制 " ^ " 为次方 第0位 0 2^0 = 0 第1位 0 2^1 = 0 第2位 1 2^2 = 4 第3位 0 2^3 = 0 第4位 0 2^4 = 0 第5位 1 2^5 = 32 第6位 1 2^6 = 64 第7位 0 2^7 = 0 + --------------------------- 100 用横式计算为: 0 2 ^ 0 + 0 2 ^ 1 + 1 2 ^ 2 + 1 2 ^ 3 + 0 2 ^ 4 + 1 2 ^ 5 + 1 2 ^ 6 + 0 2 ^ 7 = 100 0乘以多少都是0,所以我们也可以直接跳过值为0的位: 1 2 ^ 2 + 1 2 ^ 3 + 1 2 ^ 5 + 1 2 ^ 6 = 100

3. 十 进制转换 八进制

和转换为2进制的方法类似,变化:除数由2变成8。 来看一个例子,如何将十进制数120转换成八进制数。 用表格表示: 被除数 计算过程 商 余数 120 120/8 15 0 15 15/8 1 7 1 1/8 0 1 120转换为8进制,结果为:170。

4. 八进制转换 十进制

八进制就是逢8进1。 八进制数采用 0~7这八数来表达一个数。 八进制数第0位的权值为8的0次方,第1位权值为8的1次方,第2位权值为8的2次方…… 所以,设有一个八进制数:1507,转换为十进制为: 用竖式表示: 1507换算成十进制。 第0位 7 80 = 7 第1位 0 81 = 0 第2位 5 82 = 320 第3位 1 83 = 512 + -------------------------- 839 同样,我们也可以用横式直接计算: 7 80 + 0 81 + 5 82 + 1 83 = 839 结果是,八进制数 1507 转换成十进制数为 839 5. 十 ----> 十六 10进制数转换成16进制的方法,和转换为2进制的方法类似,变化:除数由2变成16。 同样是120,转换成16进制则为: 被除数 计算过程 商 余数 120 120/16 7 8 7 7/16 0 7 120转换为16进制,结果为:78。

6. 十六进制转换 十进制

16进制就是逢16进1,但我们只有0~9这十个数字,所以我们用A,B,C,D,E,F这五个字母来分别表示10,11,12,13,14,15。字母不区分大小写。 十六进制数的第0位的权值为16的0次方,第1位的权值为16的1次方,第2位的权值为16的2次方…… 所以,在第N(N从0开始)位上,如果是是数 X (X 大于等于0,并且X小于等于 15,即:F)表示的大小为 X 16的N次方。 设有一个十六进数 2AF5, 那么如何换算成10进制呢? 用竖式计算: 2AF5换算成10进制: 第0位: 5 160 = 5 第1位: F 161 = 240 第2位: A 162 = 2560 第3位: 2 163 = 8192 + ------------------------------------- 10997 直接计算就是: 5 160 + F 161 + A 162 + 2 163 = 10997 (别忘了,在上面的计算中,A表示10,而F表示15) 现在可以看出,所有进制换算成10进制,关键在于各自的权值不同。 设有人问你,十进数 1234 为什么是 一千二百三十四?你尽可以给他这么一个算式: 1234 = 1 103 + 2 102 + 3 101 + 4 100

7. 二进制转换 八进制

(11001.101)(二) 整数部分: 从后往前每三位一组,缺位处用0填补,然后按十进制方法进行转化, 则有: 001=1 011=3 然后我们将结果按从下往上的顺序书写就是:31,那么这个31就是二进制11001的八进制形式 小数部分: 从前往后每三位一组,缺位处用0填补,然后按十进制方法进行转化, 则有: 101=5 然后我们将结果部分按从上往下的顺序书写就是:5,那么这个5就是二进制0.101的八进制形式 所以:(11001.101)(二)=(31.5)(八)

8. 八进制转换二进制

9. 十六进制转换二进制 ;二进制转换十六进制

二进制和十六进制的互相转换比较重要。不过这二者的转换却不用计算,每个C,C++程序员都能做到看见二进制数,直接就能转换为十六进制数,反之亦然。 我们也一样,只要学完这一小节,就能做到。 首先我们来看一个二进制数:1111,它是多少呢? 你可能还要这样计算:1 20 + 1 21 + 1 22 + 1 23 = 1 1 + 1 2 + 1 4 + 1 8 = 15。 然而,由于1111才4位,所以我们必须直接记住它每一位的权值,并且是从高位往低位记,:8、4、2、1。即,位的权值为23 = 8,然后依次是 22 = 4,21=2, 20 = 1。 记住8421,对于任意一个4位的二进制数,我们都可以很快算出它对应的10进制值。 下面列出四位二进制数 xxxx 所有可能的值(中间略过部分) 仅4位的2进制数 快速计算方法 十进制值 十六进值 1111 = 8 + 4 + 2 + 1 = 15 F 1110 = 8 + 4 + 2 + 0 = 14 E 1101 = 8 + 4 + 0 + 1 = 13 D 1100 = 8 + 4 + 0 + 0 = 12 C 1011 = 8 + 4 + 0 + 1 = 11 B 1010 = 8 + 0 + 2 + 0 = 10 A 1001 = 8 + 0 + 0 + 1 = 9 9 .... 0001 = 0 + 0 + 0 + 1 = 1 1 0000 = 0 + 0 + 0 + 0 = 0 0 二进制数要转换为十六进制,就是以4位一段,分别转换为十六进制。 如(上行为二制数,下面为对应的十六进制): 1111 1101 , 1010 0101 , 1001 1011 F D , A 5 , 9 B 反过来,当我们看到 FD时,如何迅速将它转换为二进制数呢? 先转换F: 看到F,我们需知道它是15(可能你还不熟悉A~F这五个数),然后15如何用8421凑呢?应该是8 + 4 + 2 + 1,所以四位全为1 :1111。 接着转换 D: 看到D,知道它是13,13如何用8421凑呢?应该是:8 + 4 + 1,即:1101。 所以,FD转换为二进制数,为: 1111 1011 由于十六进制转换成二进制相当直接,所以,我们需要将一个十进制数转换成2进制数时,也可以先转换成16进制,然后再转换成2进制。 比如,十进制数 1234转换成二制数,如果要一直除以2,直接得到2进制数,需要计算较多次数。所以我们可以先除以16,得到16进制数: 被除数 计算过程 商 余数 1234 1234/16 77 2 77 77/16 4 13 (D) 4 4/16 0 4 结果16进制为: 0x4D2 然后我们可直接写出0x4D2的二进制形式: 0100 1101 0010。 其中对映关系为: 0100 -- 4 1101 -- D 0010 -- 2 同样,如果一个二进制数很长,我们需要将它转换成10进制数时,除了前面学过的方法是,我们还可以先将这个二进制转换成16进制,然后再转换为10进制。 下面举例一个int类型的二进制数: 01101101 11100101 10101111 00011011 我们按四位一组转换为16进制: 6D E5 AF 1B。

(一) .二进制与十进制之间的转换

1.十进制转二进制方法为:十进制数除2取余法,即十进制数除2,余数为权位上的数,得到的商值继续除2,依此步骤继续向下运算直到商为0为止

2.二进制转十进制

方法为:把二进制数按权展开、相加即得十进制数。

(二)二进制与八进制之间的转换

1.二进制转八进制

方法为:3位二进制数按权展开相加得到1位八进制数。(注意事项,3位二进制转成八进制是从右到左开始转换,不足时补0)。

2.八进制转成二进制

方法为:八进制数通过除2取余法,得到二进制数,对每个八进制为3个二进制,不足时在最左边补零

(三) 二进制与十六进制之间的转换

1.二进制转十六进制

方法为:与二进制转八进制方法近似,八进制是取三合一,十六进制是取四合一。(注意事项,4位二进制转成十六进制是从右到左开始转换,不足时补0)。

2.十六进制转二进制

方法为:十六进制数通过除2取余法,得到二进制数,对每个十六进制为4个二进制,不足时在最左边补零。

(四) 十进制与八进制与十六进制之间的转换

1.十进制转八进制或者十六进制有两种方法

:间接法—把十进制转成二进制,然后再由二进制转成八进制或者十六进制。

2.八进制或者十六进制转成十进制

方法为:把八进制、十六进制数按权展开、相加即得十进制数。

(五)十六进制与八进制之间的转换

八进制与十六进制之间的转换有两种方法

第二种:他们之间的转换可以先转成十进制然后再相互转换。

二进制,十六进制,八进制的换算

不过,由于数据在计算机中的表示,最终以二进制的形式存在,所以有时候使用二进制,可以更直观地解决问题。

所谓16进制,就是由0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F共16个数字组成。逢16进一位,下面就讲讲在没有任何工具的情

现在可以看出,所有进制换算成10进制,关键在于各自的权值不同。

况下如何将一10进制转化为16进制:

int a = 0x100F;

1000除以16得62余8,那么位为8,再将62除以16得3余14,那么倒数第2为E(14对于16进制来说是E),3比16小了,所以不用继续除了

,总的就是3E8,为1000的16进制数。

想要将16进制的数转化为10进制,只需将上面的步骤反过来做就可以了。不用我多说吧!

2进制仅由0、1两个数字组成,逢1进一。要将一10进制化为2进制,介绍一个简单的方法,先将10进制的数化为16进制,再化为2进制,举

个例子:

515对应16进制为203H,将203转为2进制则为0010(2) 0000(0) 0011(3),一个位数对2进制来说是4个字符。0H就是0000、1H就是

0001、……、0EH就是1110、OFH为1111,大家可自己推一下。

总之大家一定要熟练掌握各个进制的互相转化,尤其是100以内10--16和16--10的互相转化要记住。

16-10H、32-20H、48-30H、64-40H、80-50H、96-60H、100-64H,255-FFH,65535-FF FFH,1677万-FF FF FFH,前为10进制,后有H的为16

进制,这些能记住,以后修改就方便许多了。

二进制

二进制是逢2进位的进位制,0、1是基本算符。

现代的电子计算机技术全部采用的是二进制,因为它只使用0、1两个数字符号,非常简单方便,易于用电子方式实现。

二进制四则运算规则

加法 0+0=0,0+1=1+0=1,1+1=10

减法 0-0=0,1-0=1,1-1=0,0-1=-1

乘法 0×0=0,0×1=1×0=0,1×1=1

除法 0÷1=0,1÷1=1

一、什么是二进制

在现实生活和记数器中,如果表示数的“器件”只有两种状态,如电灯的“亮”与“灭”,开关的“开”与“关”。一种状态表示数码0,另一种状态表示数码1,1加1应该等于2,因为没有数码2,只能向上一个数位进一,就是采用“满二进一”的原则,这和十进制是采用“满十进一”原则完全相同。

1+1=10,10+1=11,11+1=100,100+1=101,

101+1=110,110+1=111,111+1+=1000,……,

可见二进制的10表示二,100表示四,1000表示八,10000表示十六,……。

二进制同样是“位值制”。同一个数码1,在不同数位上表示的数值是不同的。如11111,从右往左数,位的1就是一,第二位的1表示二,第三位的1表示四,第四位的1表示八,第五位的1表示十六。用大家熟悉的十进制说明这个二进制数的含意,有以下关系式

(11111)(二进制)=1×24+1×23+1×22+1×2+1(十进制)

一个二进制整数,从右边位起,各位的计数单位分别是1,2,22,23,…,2n,…。

1为什么需要八进制和十六进制?

编程中,我们常用的还是10进制……必竟C/C++是高级语言。

比如:

int a = 100,b = 99;

但,二进制数太长了。比如int 类型占用4个字节,32位。比如100,用int类型的二进制数表达将是:

0000 0000 0000 0000 0110 0100

面对这么长的数进行思考或作,没有人会喜欢。因此,C,C++ 没有提供在代码直接写二进制数的方法。

用16进制或8进制可以解决这个问题。因为,进制越大,数的表达长度也就越短。不过,为什么偏偏是16或8进制,而不其它的,诸如9或20进制呢?

2、8、16,分别是2的1次方,3次方,4次方。这一点使得三种进制之间可以非常直接地互相转换。8进制或16进制缩短了二进制数,但保持了二进制数的表达特点。在下面的关于进制转换的课程中,你可以发现这一点。

6.2 二、八、十六进制数转换到十进制数

6.2.1 二进制数转换为十进制数

二进制数第0位的权值是2的0次方,第1位的权值是2的1次方……

所以,设有一个二进制数:0110 0100,转换为10进制为:

下面是竖式:

0110 0100 换算成 十进制

第0位 0 20 = 0

第1位 0 21 = 0

第2位 1 22 = 4

第3位 0 23 = 0

第4位 0 24 = 0

第5位 1 25 = 32

第6位 1 26 = 64

第7位 0 27 = 0 +

---------------------------

100

用横式计算为:

0 20 + 0 21 + 1 22 + 1 23 + 0 24 + 1 25 + 1 26 + 0 27 = 100

0乘以多少都是0,所以我们也可以直接跳过值为0的位:

1 22 + 1 23 + 1 25 + 1 26 = 100

6.2.2 八进制数转换为十进制数

八进制就是逢8进1。

八进制数采用 0~7这八数来表达一个数。

所以,设有一个八进制数:1507,转换为十进制为:

用竖式表示:

1507换算成十进制。

第0位 7 80 = 7

第1位 0 81 = 0

第2位 5 82 = 320

第3位 1 83 = 512 +

--------------------------

839

同样,我们也可以用横式直接计算:

7 80 + 0 81 + 5 82 + 1 83 = 839

结果是,八进制数 1507 转换成十进制数为 839

6.2.3 八进制数的表达方法

C,C++语言中,如何表达一个八进制数呢?如果这个数是 876,我们可以断定它不是八进制数,因为八进制数中不可能出7以上的数字。但如果这个数是123、是567,或12345670,那么它是八进制数还是10进制数,都有可能。

所以,C,C++规定,一个数如果要指明它采用八进制,必须在它前面加上一个0,如:123是十进制,但0123则表示采用八进制。这就是八进制数在C、C++中的表达方法。

由于C和C++都没有提供二进制数的表达方法,所以,这里所学的八进制是我们学习的,CtC++语言的数值表达的第二种进制法。

现在,对于同样一个数,比如是100,我们在代码中可以用平常的10进制表达,例如在变量初始化时:

int a = 100;

我们也可以这样写:

int a = 0144; //0144是八进制的100;一个10进制数如何转成8进制,我们后面会学到。

千万记住,用八进制表达时,你不能少了最前的那个0。否则计算机会通通当成10进制。不过,有一个地方使用八进制数时,却不能使用加0,那就是我们前面学的用于表达字符的“转义符”表达法。

6.2.4 八进制数在转义符中的使用

我们学过用一个转义符''加上一个特殊字母来表示某个字符的方法,如:'n'表示换行(line),而't'表示Tab字符,'''则表示单引号。今天我们又学习了一种使用转义符的方法:转义符''后面接一个八进制数,用于表示ASCII码等于该值的字符。

比如,查一下第5章中的ASCII码表,我们找到问号字符(?)的ASCII值是63,那么我们可以把它转换为八进值:77,然后用 '77'来表示'?'。由于是八进制,所以本应写成 '077',但因为C,C++规定不允许使用斜杠加10进制数来表示字符,所以这里的0可以不写。

事实上我们很少在实际编程中非要用转义符加八进制数来表示一个字符,所以,6.2.4小节的内容,大家仅仅了解就行。

6.2.5 十六进制数转换成十进制数

8进制,用八个数字:0、1、2、3、4、5、6、7;

10进制,用十个数字:0到9;

16进制,用十六个数字……等等,人或说是印度人,只发明了10个数字啊?

16进制就是逢16进1,但我们只有0~9这十个数字,所以我们用A,B,C,D,E,F这五个字母来分别表示10,11,12,13,14,15。字母不区分大小写。

十六进制数的第0位的权值为16的0次方,第1位的权值为16的1次方,第2位的权值为16的2次方……

2AF5换算成10进制:

第0位: 5 160 = 5

第1位: F 161 = 240

第2位: A 162 = 2560

第3位: 2 163 = 8192 +

-------------------------------------

10997

5 160 + F 161 + A 162 + 2 163 = 10997

(别忘了,在上面的计算中,A表示10,而F表示15)

设有人问你,十进数 1234 为什么是 一千二百三十四?你尽可以给他这么一个算式:

1234 = 1 103 + 2 102 + 3 101 + 4 100

6.2.6 十六进制数的表达方法

如果不使用特殊的书写形式,16进制数也会和10进制相混。随便一个数:9876,就看不出它是16进制或10进制。

C,C++规定,16进制数必须以 0x开头。比如 0x1表示一个16进制数。而1则表示一个十进制。另外如:0xff,0xFF,0X102A,等等。其中的x也也不区分大小写。(注意:0x中的0是数字0,而不是字母O)

以下是一些用法示例:

int b = 0x70 + a;

至此,我们学完了所有进制:10进制,8进制,16进制数的表达方式。一点很重要,C/C++中,10进制数有正负之分,比如12表示正12,而-12表示负12,;但8进制和16进制只能用达无符号的正整数,如果你在代码中里:-078,或者写:-0xF2,C,C++并不把它当成一个负数。

6.2.7 十六进制数在转义符中的使用

转义符也可以接一个16进制数来表示一个字符。如在6.2.4小节中说的 '?' 字符,可以有以下表达方式:

'?' //直接输入字符

'77' //用八进制,此时可以省略开头的0

'0x3F' //用十六进制

同样,这一小节只用于了解。除了空字符用八进制数 '0' 表示以外,我们很少用后两种方法表示一个字符。

6.3 十进制数转换到二、八、十六进制

6.3.1 10进制数转换为2进制数

给你一个十进制,比如:6,如果将它转换成二进制数呢?

10进制数转换成二进制数,这是一个连续除2的过程:

把要转换的数,除以2,得到商和余数,

将商继续除以2,直到商为0。将所有余数倒序排列,得到数就是转换结果。

听起来有些糊涂?我们结合例子来说明。比如要转换6为二进制数。

“把要转换的数,除以2,得到商和余数”。

那么:

要转换的数是6, 6 ÷ 2,得到商是3,余数是0。 (不要告诉我你不会计算6÷3!)

“将商继续除以2,直到商为0……”

现在商是3,还不是0,所以继续除以2。

那就: 3 ÷ 2, 得到商是1,余数是1。

“将商继续除以2,直到商为0……”

那就: 1 ÷ 2, 得到商是0,余数是1 (拿笔纸算一下,1÷2是不是商0余1!)

好极!现在商已经是0。

我们三次计算依次得到余数分别是:0、1、1,将所有余数倒序排列,那就是:110了!

6转换成二进制,结果是110。

被除数 计算过程 商 余数

3 3/2 1 1

1 1/2 0 1

(在计算机中,÷用 / 来表示)

如果是在时,我们要画这样表还是有点费时间,所更常见的换算过程是使用下图的连除:

请大家对照图,表,及文字说明,并且自已拿笔计算一遍如何将6转换为二进制数。

说了半天,我们的转换结果对吗?二进制数110是6吗?你已经学会如何将二进制数转换成10进制数了,所以请现在就计算一下110换成10进制是否就是6。

6.3.2 10进制数转换为8、16进制数

非常开心,10进制数转换成8进制的方法,和转换为2进制的方法类似,惟一变化:除数由2变成8。

来看一个例子,如何将十进制数120转换成八进制数。

被除数 计算过程 商 余数

120 120/8 15 0

15 15/8 1 7

1 1/8 0 1

120转换为8进制,结果为:170。

非常非常开心,10进制数转换成16进制的方法,和转换为2进制的方法类似,惟一变化:除数由2变成16。

同样是120,转换成16进制则为:

被除数 计算过程 商 余数

120 120/16 7 8

7 7/16 0 7

120转换为16进制,结果为:78。

请拿笔纸,采用(图:1)的形式,演算上面两个表的过程。

17转为16进制是多少

十六进制 –Hexadecimal 简称:H

十进制的17转为十六进制是11。

种:他们之间的转换可以先转成二进制然后再相互转换。

16进制即逢16进1,每一位上可以是从小到大为0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F共16个大小不同的数,其中用A,B,C,D,E,F这六个字母来分别表示10,11,12,13,14,15。

扩展资料:

十六进制的转换:

1、数学的计算方法(十进制转十六进制):采余数定理分解

例如将487710转成十六进制:

4877÷16=304....13(D)

19÷16=1....3

1÷16=0...2、由于人类在自然进化过程中,双手共有10根手指头,所以在计数时就自发地采用了十进制计数法,发展至今,十进制仍是应用最广泛的一种计数方法;.1

这样就计到487710=130D16

2、编程中的函式

Visual Basic:

十六进制转换为十进制:十进制(Long型)=CLng("&H" & 十六进制数(String型))

Jascript:Jascript 能以 toString() 函数来将十进制数字转为其他任意进制格式(String类型)

Python:调用Python内置int()函数把该字串转为数字。

16进制数据怎么转化成10进制数据?比如3F?

2进制,用两个数字:0、1;

支持楼上的,对,最傻瓜的转换方式就是这样11D=1011B。f在16进中是一个数,相当于15。

八进制 0 1 2 3 4 5 6 7

0x3f = 316 + 15 = 63(十进制)

ok?

二进制数怎样转换为十六进制?

B=11,c=12 十六进制和二进制之间有16=2的4字方的关系所以, 11=1011,12=1100,

二进制转十六进制,取四合一法,即从二进制的小数点为分界点,向左(或向右)每四位取成一位。具体方法如下。

第3位: 2 16^3 = 8192

1、首先,先要看它就是816^4+1016^3+316^2+016^1+1416^0=566030,算出来的值就是这个数对应的十进制数看十六位数的表示方法。

2、二进制数与十六进制数之间的对应关系表,如下:

3、二进制转换成十六进制的方法是,取四合一法,即从二进制的小数点为分界点,向左(或向右)每四位取成一位。

4、组分好以后,对照二进制与十六进制数的对应表(如图2中所示),将四位二进制按权相加,得到的数就是一位十六进制数,然后按顺序排列,小数点的位置不变,得到的就是十六进制数。

注意事项:

2、如果一组不满四位,对对应表不熟悉的可以加0补充。

汇编-进制转换

把上面的一段改成用表格来表示,则为:

进制之间的转换记录

常见的进制范围表示方法:

二进制数:01 2个数字

逢二进一:0+0=0,0+1=1,1+0=1,1+1=(1)0

八进制数:01234567 8个数字

逢八进一:1+5=6,5+6=13

十进制数:0123456789 10个数字

逢十进一:1+5=6,5+6=11

十六进制数:0123456789ABCDEF 16个数字

逢十六进一:5+6=B,A+B=15

二进制 –Binary 简称:B

八进制 –Octal 简称:O

十进制 –Decimal 简称:D

常见的需要背下来的二进制,十进制,十六进制之间的转换

二进制

十进制

十六进制

0000

0001

11

0010

22

0011

33

0100

44

0101

304÷16=19....055

0110

66

0111

77

1000

88

1001

99

1010

10

A1011

11

B1100

12

C1101

13

D1110

14

E1111

15

F其他进制转换成二进制

例题练习:

2A.8H=()D 十六进制转换为十进制

这里转换的方法就是多少进制转换成十进制的话就多少的几次方来计算,指数就按照小数点来划分,小数点左边就是整数,右边就是负数,这跟初中学习的数轴是一个道理。

解:2A.8H=2 161+A 160+816-1

165.2O=()D 八进制转换为十进制

同理这里是以8的多少次方计算

解:165.2O=1 82+6 81+5 80+2 8-1

10101.11B=()D 二进制转换为十进制

解:10101.11B=1 24+0 23+1 22+0 21+1 20+1 2-1+12-2

十进制转换为其他进制

这里十进制转换分为整数和小数,一般常见的也都是整数,转换时短除法计算即可。

整数转换

427D=()H

427D=()O

427D=653O

11D=()B

纯所以,在第N(N从0开始)位上,如果是是数 X (X 大于等于0,并且X小于等于 15,即:F)表示的大小为 X 16的N次方。小数转换

即有整数又有小数

若十进制数有整数也有小数,则整数和小数分别转换,再求其和即可。

例:11.375D=()B

0.3752=0.75 ……0

0.752=1.5 ……1

0.52=1.0 ……1

0.375D=0.011B

二进制转换八进制或十六进制

记住分组是以小数点为起点开始同时向左和向右开始

如下:

1011011111.10011B=()O=()H

上述是将二进制转换为八进制和十六进制

转换成八进制如下作:

1 011 011 111 . 100 110 向右缺少就补0

1 3 3 7 4 6 将对应分组的二进制进行转换为十进制之后合并就可以了

最终的八进制结果是:1337.46O

转换成十六进制如下作:

10 1101 1111 . 1001 1000 向右补3个0

2 D F 9 8 将对应分组的二进制先转换为十进制再转换为十六进制合并即可。

最终的十六进制结果是:2DF.98H

八进制和十六进制转换为二进制

方法同样是进行分组,将对应的八进制和十六进制的数值每个进行分组,然后对单个的数值进行转换为二进制,再合并即可。

36.24O=()B

3 6 2 4

011 110 010 100

最终八进制转换为二进制结果是:11110.0101B

3DB.46H=()B

3 D B . 4 6

0011 1101 1011 . 0100 0110

最终八进制转换为二进制结果是:1111011011.0100011B