内存地址、颜色值、权限位都是十六进制;网络掩码是二进制。不同进制间转换是程序员的基本功,本文讲方法也给技巧。
任何进制转十进制:按位展开求和。如十六进制 1A3 = 1×256 + 10×16 + 3 = 419。每位权重是该进制的幂次。
短除法:反复除以目标进制取余数,余数倒序排列。如 100 转二进制:100/2=50 余 0,依次得 1100100。
四位二进制对应一位十六进制(因为 16 是 2 的 4 次方)。二进制 1011 1101 按四位分组即 BD。这是调试内存和颜色值最常用的技巧。
三位二进制对应一位八进制(8 是 2 的 3 次方),Unix 文件权限 755 转二进制即 111 101 101,分别对应属主、组、其他人权限。
除2取余最稳定;也可以记住 2 的幂次表(1 2 4 8 16 32 64 128 256)做减法分解。
晶体管只有通断两态,二进制与硬件天然匹配,且抗干扰能力强。
没有,通常代码中按团队规范统一,CSS 色值大小写均可。