为什么以8为底的数字是有用的?

问题描述 投票:2回答:3

Java提供了以2、8、10和16为基数编写数字文字的功能。我想知道为什么要包含以8为底的数字。我认为可能存在类似于十六进制的一个字节的容量为FF + 1的事实,依此类推。

java literals
3个回答
2
投票

“八进制数不像以前那样普遍。但是,当一个字中的位数是3的倍数时,将使用八进制数。它还用作表示UNIX系统和UTF8数字的表示形式,等等。“

发件人:https://www.tutorialspoint.com/octal-number-system


1
投票

是让熟悉C等语言的人熟悉这种语言。然后的问题是为什么要在那些人中支持它!

[有些架构(各种PDP)使用18 bit wide words(其他使用36位字),所以数字为3位宽的文字将很有用。

实际上,我看到的唯一用于指定Unix样式权限的地方,例如07770644

(嘲笑为什么支持它的原因是“要在this question上投票”)。


0
投票

八进制数在使用4位并且需要带符号的数字时很有用。因此,它现在大部分都是历史性的(或教育性的,例如简单的2的补语计算),因为我们甚至可以选择16、32和64位处理器来完成简单的任务。

例如:如果我们有4位代表一个有符号的二进制数(1位代表符号,3位代表幅度),那么我们可以用符号幅度表示法表示的数字范围将是...

-2^(4-1) – 1    to    +2^(4-1) – 1
  -2^(3) – 1    to    +2^(3) – 1
          -7    to    +7

即八进制数范围。

© www.soinside.com 2019 - 2024. All rights reserved.