我见过二进制和十六进制经常使用,但从不八进制。然而,八进制在某些语言中使用它有自己的约定(即,指示八进制基数的前导0)。何时使用八进制?使用八进制或八进制的一些典型情况会更容易推理吗?或者仅仅是品味问题?
答案 0 :(得分:43)
当一个字中的位数是3的倍数时使用八进制。例如,具有18位字大小的古代系统,具有9位字节的系统,或具有9位或12位的unix文件许可。
如果你单词中的位数是4的倍数,那么请一定使用hex 。
答案 1 :(得分:20)
Octal用作表示UNIX系统上文件权限的简写。例如,文件模式rwxr-xr-x
为0755
。
答案 2 :(得分:6)
当语法是一个古老的遗物时,使用Octal,它可能在某些平台上有意义(系统字并不总是8位的倍数)。如今,hex是可以使用的东西。
答案 3 :(得分:5)
没有想到这个,但数字显示!
答案 4 :(得分:4)
以前更频繁使用octal的一个主要原因是,在头部中的八进制和二进制之间转换比从十六进制到二进制更容易:您只需要记住8个八进制数字的二进制表示(0- 7)。
回到调试意味着从一排LED读取寄存器内容,或者使用一系列切换开关输入数据时,这是一个很大的问题。许多这些早期计算机上的面板将LED和开关分组成三组以促进这一点。
然而,十六进制开始胜出,因为8位字节倍数的字大小开始胜出,并且需要以二进制形式读取和输入数据变得不必要(使用控制台文本UI和后来的GUI调试器)。 / p>
答案 5 :(得分:3)
在航空电子设备中,ARINC 429字标签几乎总是以八进制表示。
答案 6 :(得分:2)
如果鸟可以计数,我的猜测是他们使用八进制。虽然大多数鸟类的羽毛“手”上都有3位数,但大多数都是Tetradactyly,这意味着每只脚上有4个脚趾。
答案 7 :(得分:1)
音乐,只要你远离(大多数)锐利和平面。
答案 8 :(得分:0)
仅供参考,有一些地方可以让windows和javascript自动决定前缀为零的数字是八进制并转换数字。
在Windows中,如果ping和10.0.2.010之类的地址,它实际上将ping 10.0.2.8
如果您将其作为计算机的ip / dns地址输入,Windows也会执行此操作
虽然它已被弃用,但如果你没有指定基数http://www.w3schools.com/jsref/jsref_parseint.asp
,Javascript默认会在某些函数(如parseInt)上执行此操作