跳转到内容
主菜单
主菜单
移至侧栏
隐藏
导航
首页
最近更改
随机页面
MediaWiki帮助
GSXAB的知识库
搜索
搜索
外观
登录
个人工具
登录
Advertising:
查看“︁进位制记数法”︁的源代码
页面
讨论
简体中文
阅读
查看源代码
查看历史
工具
工具
移至侧栏
隐藏
操作
阅读
查看源代码
查看历史
刷新
常规
链入页面
相关更改
特殊页面
页面信息
外观
移至侧栏
隐藏
←
进位制记数法
因为以下原因,您没有权限编辑该页面:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
[[分类:记数系统]] {{InfoBox |name=进位制记数法 |eng_name=standard positional notation |aliases=进制,标准位值制,标准记数法 }} {{InfoBox |name=基数 |eng_name=radix |aliases=base }} '''进位制记数法'''('''standard positional notation'''),指一种[[位值制记数法]]中,每一个数位的位权依次是特定数('''基数''')的[[幂]],且数位上的符号本身本身代表 0 到基数减一。也称'''进制'''/'''进位记数制'''。 按顺序排列这一类记数法下的数字,会呈现“满×进一”的形式,直到某一位数后续的所有位都“满”了会清空这些位并向前“进”位,因此被翻译为进(位)制。 尽管实际范围存在差异,位值制记数法常常默认指进位制记数法。不是进位制记数法的位值制记数法称为[[非标准位值制记数法]]。 == 定义 == === 关于记数法 === 在位值制记数法中,若每一个数位上的位权都是某个大于 1 自然数 <math>r</math> 的幂,即 <math>\cdots,r^3,r^2,r,1,r^{-1},r^{-2},r^{-3},\cdots</math> ,且每一个数位上的数字都只使用 <math>r</math> 个符号 <math>0,1,\cdots,r-1</math> ,则称这一类记数法为'''进位制记数法'''('''standard positional notation'''),对应这一 <math>r</math> 的具体记数法称为 '''<math>r</math> 进制'''('''base-<math>r</math> notation'''),自然数 <math>r</math> 称为 <math>r</math> 进制中的'''基数'''('''radix''')/底数('''base''')。 === 关于数 === 对自然数 <math>r</math> ,集合 <math>D_r = \{0,1,2,\cdots,r-1\}</math> 是一个含有 <math>r</math> 个元素的符号集,记这一字符集合上的非空[[自由幺半群|字符串集]](或描述为 [[Kleene 闭包|Kleene<sup>+</sup> 闭包]]) <math>D_r^+ = \{d_n d_{n-1} d_{n-2} \cdots d_0 \mid n>=0 \land d_i \in D_r \}</math> ,通过[[等价关系]] <math>d_n d_{n-1} d_{n-2} \cdots d_0 \sim 0 d_n d_{n-1} d_{n-2} \cdots d_0</math> 定义的[[商集]] <math>D_r^+/\sim</math> 与自然数集 <math>\mathbb{N}</math> 关于[[短先字典序]]序同构,其中元素称为 <math>r</math> 进制数。 == 记号 == 使用 <math>r\leq 16</math> 的 <math>r</math> 进制时,通常在某一位数字上使用 <math>0,1,\cdots,r-1</math> 字符,并且按照类似平常十进制的方式书写。 整数排列为 <math>a_n a_{n-1} a_{n-2} \cdots a_0</math> 的格式,用这一格式记录整数 <math>\sum_{i=0}^n a_i r^i = a_n r^n + a_{n-1} r^{n-1} + \cdots + a_0</math> 。 反过来,每一位上的符号与数本身的递推关系满足:若 <math>m</math> 代表 <math>a_n a_{n-1} \cdots a_ 1 a_0</math> ,则: <math> \begin{aligned} m = q_0 r + a_0 &, 0 \leq a_0 < r, q_0 = \lfloor\tfrac{m}{r}\rfloor \\ q_0 = q_1 r + a_1 &, 0\leq a_1 < r, q_1 = \lfloor\tfrac{q_0}{r}\rfloor \\ q_1 = q_2 r + a_2 &, 0\leq a_2 < r, q_2 = \lfloor\tfrac{q_1}{r}\rfloor \\ \vdots \\ q_{n-1} = 0 r + a_n &, 0\leq a_n < r, q_{n-1} = \lfloor\tfrac{q_{n-1}}{r}\rfloor \\ \end{aligned} </math> 等式的右侧都是使用最小非负余数的带余除法。 === 小数部分 === 若带有小数部分,则可写为 <math>a_n a_{n-1} a_{n-2} \cdots a_0 . a_{-1} a_{-2} \cdots</math> ,用这一格式记录的数为 <math>\sum_{i=0}^n a_i r^i + \sum_{i=1}^\infty a_{-i} r^{-i}= a_n r^n + a_{n-1} r^{n-1} + \cdots + a_0 + a_{-1} r^{-1} + a_{-2} r^{-2} + \cdots</math> 。 === 进制标注 === 如果需要区分具体基数,通常有三种不同表示方法: * 下标标注进制名称的缩写; * 将数字打括号,并下标十进制标注进制基数; * 在末尾加进制名称的缩写。 随着计算机特别是 [[C 语言]]风格的数字表示方法的普及, C 风格的前缀表示也逐渐常见,特别是在计算机语境中。 对于基数较大的情况,则需要约定符号表或者使用十进制书写每个数位上的数字。 == 常见进制 == {| style='width: 100%' class='wikitable' |- ! 基数 ! 名称 ! 英文名称 ! 缩写 ! 字母后缀表示 ! C 风格前缀 |- ! 2 ! [[二进制]] | binary | bin | B | <code>0b</code> |- ! 3 ! [[三进制]] | ternary, trinary | | | |- ! 4 ! 四进制 | quaternary | | | |- ! 5 ! 五进制 | quinary | | | |- ! 6 ! [[六进制]] | senary, heximal, seximal | | | |- ! 7 ! 七进制 | septimal, septenary | | | |- ! 8 ! [[八进制]] | octal | oct | O | <code>0</code>,<code>0o</code> |- ! 9 ! 九进制 | nonary, nonal | | | |- ! 10 ! [[十进制]] | decimal, denary | dec | | |- ! 12 ! [[十二进制]] | duodecimal, dozenal | | | |- ! 16 ! [[十六进制]] | hexadecimal, sexadecimal, sedecimal | hex | H | <code>0x</code> |- ! 36 ! 三十六进制 | hexatrigesimal | | | |- ! 60 ! [[六十进制]] | sexagesimal | | | |} 此外, [[RFC 4648]] 中的 base16 、 base32 、 base64 也可以看成用进制命名的,参考对应条目。 {{记数法}}
返回
进位制记数法
。
Advertising: