进制符号表示
🔢 数字的进制表示与结尾符号(或前缀)
在计算机科学和编程中,数字的结尾符号(或前缀)用于表示不同的进制(数制)。以下是常见的数字表示方法及其含义的详细说明:
✅ 1. 十六进制(Hexadecimal)
🔸 后缀 H
或 h
表示该数字是十六进制(基数为 16),使用数字 0-9
和字母 A-F
(或 a-f
)表示。
示例:
1FH
= 1F₁₆ = 31₁₀FFh
= FF₁₆ = 255₁₀
注意:
- 如果十六进制数以字母开头(如
A3H
),在某些汇编语言中需要在前面加0
(如0A3H
),以避免与标识符混淆。
🔸 前缀 0x
或 0X
(适用于 C/C++/Java/Python 等语言)
示例:
0x1F
= 1F₁₆ = 31₁₀0xFF
= FF₁₆ = 255₁₀
🔸 前缀 $
(Pascal、部分汇编语言)
示例:
$1F
= 1F₁₆ = 31₁₀
✅ 2. 二进制(Binary)
🔸 后缀 B
或 b
表示该数字是二进制(基数为 2),仅包含 0
和 1
。
示例:
1010B
= 1010₂ = 10₁₀1101b
= 1101₂ = 13₁₀
🔸 前缀 0b
或 0B
(适用于 C/C++/Python 等语言)
示例:
0b1010
= 1010₂ = 10₁₀0B1101
= 1101₂ = 13₁₀
✅ 3. 八进制(Octal)
🔸 后缀 O
或 o
(较少见,可能混淆字母 O
和数字 0
)
表示该数字是八进制(基数为 8),使用数字 0-7
。
示例:
17O
= 17₈ = 15₁₀
🔸 前缀 0
(适用于 C/C++/Python2 等语言)
示例:
017
= 17₈ = 15₁₀(注意:017
≠ 17₁₀)
📝 在 Python 3 及更高版本中,推荐使用
0o
前缀表示八进制(如0o17
)。
✅ 4. 十进制(Decimal)
🔸 无后缀或前缀(默认)
如果没有特殊符号,数字默认为十进制(基数为 10)。
示例:
123
= 123₁₀
🔸 后缀 D
或 d
(某些汇编语言或旧系统)
示例:
123D
= 123₁₀(显式声明十进制)
✅ 5. 其他表示法
(1)浮点数(Float)
-
后缀
F
或f
表示单精度浮点数(32位)。
示例(C/C++/Java):3.14f
或3.14F
-
后缀
L
或l
表示长双精度浮点数(如 C 语言中的long double
)。
示例:3.14L
(2)科学计数法(Scientific Notation)
-
使用
E
或e
表示
示例:1.23e5
= 1.23 × 10⁵ = 123000
📊 总结表
进制 | 前缀 | 后缀 | 示例(值 = 31₁₀) |
---|---|---|---|
十六进制 | 0x , $ | H , h | 0x1F , 1FH |
十进制 | 无(或 D ) | D , d | 31 , 31D |
八进制 | 0 (或 0o ) | O , o | 037 , 37O |
二进制 | 0b | B , b | 0b11111 , 11111B |
⚠️ 注意事项
-
大小写通常不敏感:
H
/h
、B
/b
、D
/d
可互换,但某些语言(如 C/C++)区分0x
与0X
。 -
汇编语言的特殊规则:
- x86 汇编常用
H
后缀(如MOV AX, 1FH
)。 - 如果十六进制数以字母开头,常需加前导
0
(如0A3H
),避免与变量冲突。
- x86 汇编常用
-
现代编程语言更倾向于使用前缀法(如
0x1F
、0b1010
);后缀法多用于汇编或旧语言。