跳转到内容
主菜单
主菜单
移至侧栏
隐藏
导航
首页
最近更改
随机页面
MediaWiki帮助
GSXAB的知识库
搜索
搜索
外观
登录
个人工具
登录
Advertising:
查看“︁八进制”︁的源代码
页面
讨论
简体中文
阅读
查看源代码
查看历史
工具
工具
移至侧栏
隐藏
操作
阅读
查看源代码
查看历史
刷新
常规
链入页面
相关更改
特殊页面
页面信息
外观
移至侧栏
隐藏
←
八进制
因为以下原因,您没有权限编辑该页面:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
[[分类:记数系统]] {{InfoBox |name=八进制 |eng_name=octal numeral system |aliases=base-8 numeral system }} {{InfoBox |name=八进制的 |eng_name=octal |aliases=base-8,oct }} {{InfoBox |name=八进制数 |eng_name=octal number }} '''八进制'''('''octal''', '''base-2''', 缩写为 '''oct''')记数系统指基数为 8 的[[进位制记数法]]。是指通过 0~7 八个符号表达数值的满八进一的记数方法。 由于八进制可以作为二进制的缩写,计算机科学有时会使用八进制表达二进制数据。 == 定义 == 基数为 8 的进位制记数法称为'''八进制记数法'''('''octal numeral system''', '''base-8 numeral system''', 简称 '''octal''', '''base-8''')。 八进制记数法下的数称为'''八进制数'''('''octal number''')。 类似地,“八进制系统相关的”往往使用'''八进制的'''('''octal''', 常缩写为 '''oct''', 或 '''base-8''')作为前缀。 == 表示 == 八进制中的每一位只含有 <math>0,1,2,\cdots,7</math> 八个符号。在写成数形式时,遵从进位制记数法的一般规则,由权重更高的位到权重更低的位写成一串,且存在小数部分时在位权为 <math>8^0=1</math> 的位后添加小数点。 若需要指出具体进制时,可使用一般的添加进制下标的形式,即 <math>357_8</math> 或 <math>(357)_2</math> 。也有人使用缩写下标或后缀,即 <math>1001100_\mathrm{oct}</math> 或 <math>1001100\mathrm{o}</math> 。 在[[编程语言]],特别是受到 [[C 语言]]影响的编程语言中,二进制数通常加前缀 <code>0</code> 、 <code>0o</code> 或 <code>0O</code> ,即 <code>0357</code> 。 === 使用 === 在现代计算机相关领域,八进制有时用于表达一个[[字节]]数据,此时八位组会被分为 2 + 3 + 3 的三组表达为八进制位。八进制位受到编程语言的广泛特殊支持是因为曾经有[[字]]长为 6 、 12 、 24 、 36 等的计算机系统。由于后续存储长度多逐渐变为按照 8 个二进制位划分,八进制表达内存的地位逐渐被[[十六进制]]取代。 == 数值及表示 == === 位权 === 对八进制数,其小数点前的数位的位权为 1 ,向高位依次为 <math>8,8^2,8^3,\cdots</math> 。 如果存在小数部分,则向低位也依次为 <math>8^{-1},8^{-2},8^{-3},\cdots</math> 。 === 八进制转换为十进制 === 计算一个八进制数的十进制表示时,可以通过计算对应位权相加的方式,即 <math>a_n 2^n + a_{n-1} 2^{n-1} + \cdots + a_1 2^1 + a_0</math> ,也可以通过 [[Hornor 法则]]将其看作多项式求值 <math>((\cdots(a_n x + a_{n-1}) x + \cdots + a_1) x + a_0) \mid_{x=8}</math> 。 === 十进制转换为八进制 === 计算一个十进制数的二进制表示时有两种常见办法。 短除法:不断对 8 做带余除法,将余数作为得到的位,商继续循环,直到 0 为止。余数从最低位依次到最高位排列。 === 二进制转换为八进制 === 因为 8 本身是 2 的幂,这使得二进制-八进制混合进制是 2 进制本身。将一个二进制数按照位权为 1 的数位对齐的方式划分成 3 个一组的形式,则新的形式就可以看成一个八进制数,且其中每一位数都进一步地通过 3 位二进制数表示。将这些二进制数表示对应地换成八进制中的符号,就得到了对应整个数的八进制表示。 === 八进制转换为二进制 === 以上过程的逆过程,将八进制数每一位上的符号替换为 3 位二进制数,就得到了一个被 3 位分隔的二进制数。 === 一些常见数值表示 === 对有限小数,不列出其对应的无限循环小数形式。 {| class='wikitable' style='width: 100%' |- ! 整数(十进制) !! 整数(八进制) !! 分数(十进制) !! 小数(八进制) |- | 1 || 1 || 1/1 || 1 |- | 2 || 2 || 1/2 || 0.4 |- | 3 || 3 || 1/3 || <math>0.\overline{25}</math> |- | 4 || 4 || 1/4 || 0.2 |- | 5 || 5 || 1/5 || <math>0.\overline{1463}</math> |- | 6 || 6 || 1/6 || <math>0.1\overline{25}</math> |- | 7 || 7 || 1/7 || <math>0.\overline{1}</math> |- | 8 || 10 || 1/8 || 0.1 |- | 9 || 11 || 1/9 || <math>0.\overline{07}</math> |- | 10 || 12 || 1/10 || <math>0.0\overline{6314}</math> |- | 11 || 13 || 1/11 || <math>0.\overline{0564272135}</math> |- | 12 || 14 || 1/12 || <math>0.0\overline{52}</math> |- | 13 || 15 || 1/13 || <math>0.\overline{0473}</math> |- | 14 || 16 || 1/14 || <math>0.0\overline{4}</math> |- | 15 || 17 || 1/15 || <math>0.\overline{0421}</math> |- | 16 || 20 || 1/16 || 0.04 |} {{记数法}}
返回
八进制
。
Advertising: