java - Wofür werden Oktalzahlen(Basis 8) verwendet?




literals octal (2)

Java bietet Möglichkeiten zum Schreiben numerischer Literale in die Basen 2, 8, 10 und 16.

Ich frage mich, warum Basis 8 enthalten ist, zB int x = 0123; ?

Ich denke, dass es etwas geben könnte, das der Tatsache ähnelt, dass die Kapazität eines Bytes hexadezimal FF + 1 ist , und so weiter.


"Die Oktalzahlen sind nicht mehr so ​​gebräuchlich wie früher. Octal wird jedoch verwendet, wenn die Anzahl der Bits in einem Wort ein Vielfaches von 3 ist. Es wird auch als Kurzform für die Darstellung von Dateiberechtigungen auf UNIX-Systemen und die Darstellung von verwendet UTF8-Nummern usw.

Von: https://www.tutorialspoint.com/octal-number-system


Es war, die Sprache denjenigen bekannt zu machen, die C usw. kannten. Dann ist die Frage, warum es in denen unterstützt wird!

Es gab Architekturen (verschiedene PDPs), die 18-Bit-Wörter verwendeten (und andere verwendeten 36-Bit-Wörter), daher wären Literale mit einer Ziffernbreite von 3 Bit nützlich.

Der einzige Ort, den ich im Java-Code gesehen habe, an dem er verwendet wird, ist die Angabe von Berechtigungen im Unix-Stil, z. B. 0777 , 0644 usw.

(Die ironische Antwort auf die Frage , warum dies unterstützt wird, lautet "Stimmen zu dieser Frage einholen").





octal