电脑中的数,都是二进制的!
不管你是什么进制的数,放在变量里,就是一样的!不需要考虑转换问题。
a=254,你可以想成是16进制:0xfe,也可想成二进制:11111110
反之:a=0x80,你可以想成是10进制:128,也可以是二进制:10000000
变量赋值后,参加计算,不管是什么“制”,直接算就是了。如
a=123,b=0xa9,一个十进制,一个十六进制。存入变量后,都是二进制。
要乘:c=a*b
要加:c=a+b
不需要考虑进制问题。
不过:如果要从变量中取得个位,十位的话,就有所不同了:
如:取10进制个位:a%10
取16进制个位要写成:a%0x10 或 a%16
======================================
有一种特殊情况:BCD码形式
这是一种特殊的保存数据方法,即每4位二进制只保存0-9的数,这种情况,它是不能直接参加计算的。
例如,BCD的23(二进制是0010 0011),你不能当10进制23(二进制0001 0111),也不能当16进制0x23(二进制0010 0011)。
因为:BCD的23的形式是0010 0011,其值的大小是0001 0111