运算顺序应该清楚吧。如Number=1234567890(10)=499602D2(16)
长整形占4个字节,共32位,按由高到低排是第31到第0位。(Number And &H7F000000)运算结果是保留Number的第30位到24位,其它位清零。得到49000000(16)。接着运算"\",得到49(16)。 49(16)再和后面的运算结果相或。
((Number And &H80000000) <> 0)的结果不是0就是1。当十进制数大于2130706432时,且保证其对应二进制数第31位为1时结果为1,否则为0。对于1234567890(10)来说,结果为0。
(((Number And &H80000000) <> 0) And &H80)的结果不是80(16)就是0,当上一步为0时,此步计算为0。
然后49(16)再和0相或,当然得49(16)。也就是Number对应16进制的高两位。