atoi 十六进制_十六进制与十进制的互化

   十六进制为计算机领域的一种重要的数制。

  十六进制,逢16进1,每个数位上可以是:0、1、2、3、4、5、6、7、8、9、A(10)、B(11)、C(12)、D(13)、E(14)、F(15),共16个大小不同的数字。

   一个数位只能用一个数字,因此,十六进制数位上大于9的数字,只得一次用字母A、B、C、D、E、F表示。

   十六进制转换成十进制的方法为:

   要从右到左用十六进制的每个数位上的数去乘以16的相应次方,而“次方”的规律为:从最右的一位开始算,依次为160、161162163164…… 16n。最后,将每个数位上的数乘以16的相应次方所得的积相加,便是十进制的数。

  由于十六进制数的计数单位可能是两位数,所以十六进制数有别于其他进制计数法。诸如,十六进制数计数单位162上为13,计数单位161上为10,计数单位160上为7,可记作DA7

例题6

  将5AF9(16)化成十进制的数。

解题思路

5AF9(16)=9×160 +15×161

+10×162+ 5×163

=9+240+2560+20480

=23289(10)

练一练

将十六进制数BCE5换算成10进制数。

BCE5(16)=5×160+14×161

+12×162+11×163

=5+224+3072+45056

=48357(10)

再练

  已知xy8(16)=3304(10),则8xy(16)数转化成十进制数是多少?

  提 示

  先将十进制数3304(10)换算成十六进制数:

22af22b919aa0526146736e1078c22ef.png

 由此知,x=12,y=14,

可见,8xy(16)=8CE(16)

=14×160+12×161+8×162

=14+192+2048

=2254(10)