0x400 | 1K |
0x1000 | 4K |
0x1 0000 | 64K |
0x10 0000 | 1M |
0x100 0000 | 16M |
0x1000 0000 | 256M |
0x4000 0000 | 1G |
我们平时如何进行快速的转换呢,这里说一下我的方法:
我们发现0x1000是0x100的0x10倍(相当于十进制的16倍),以此类推,在十六进制数中,多个0相当于0x10倍,熟记上面的进制对应表,遇到一个十六进制数,找到与之对应最接近上面的十六进进制数(我们称之为常用十六进制数),然后进行倍数换算,用需要转换的十六进制数去与比较接近的常用十六进制数,得出倍数关系,再将这种倍数关系转换成十进制数的倍数关系,然后再乘以常用十六进制数的对应十进制数即可。
我们来看几个例子:
0x5000:它是0x1000的0x5倍,所以0x1000= 4K
0x230000:
方法1,0x230000/0x10000=0x23,相当于十进制35,所以原数对应十进制数为35*64K=2240K
方法2,0x230000=0x200000 + 0x30000 = 2M + 3*64K = 2M + 192K
也许你会发现一个0x10是0x4的4倍,这一点是需要注意的,这个时候千万不能以十进制的思维来运算得到2.5倍。我们的方法是在一种0x10倍的特定关系下产生的,除些之外不要用这种方法。