| 进制 | 下标表示法 | 前缀表示法 | 后缀表示法 |
|---|---|---|---|
| 二进制 (binary) | (1001)2 | 0b1001 或 0B1001 | 1001b 或 1001B |
| 八进制 (octal) | (17)8 | 017 | 17o 或 17O |
| 十进制 (decimal) | (10)10 | 无前缀 | 10d 或 10D |
| 十六进制 (hexadecimal) | (1F)16 | 0x1F 或 0X1F | 1fh 或 1FH |
八进制的前缀法跟数字 0 过于相似,因此比较少使用。
八进制的后缀法跟十进制的过于相似,因此比较少使用。
进制转换
printf 命令转进制。
%d或%i转换成有符号的十进制%u转换成无符号的十进制%o转换成无符号的八进制%x转换成无符号的十六进制(小写字母)%X转换成无符号的十六进制(大写字母)
bc 命令转换任意进制。
- 转成四进制
echo "obase=4; 100" | bc - 转成八进制
echo "obase=8; 100" | bc - 转成十二进制
echo "obase=12; 100" | bc - 转成十六进制
echo "obase=16; 100" | bc - 八进制转十进制
echo "ibase=8; 100" | bc - 二进制转十六进制
echo "ibase=2; obase=16; 11000000" | bc