Я студент-программист, обладающий опытом программирования на Java и Python за два года. Мы говорили о числовых системах в классах, включая Binary, Octal и Hexidecimal. Я понимаю, почему Binary и Hexidecimal важны в Computing, но я не вижу никаких преимуществ при использовании чисел Octal. Какие примеры использования октального числа в программировании?Октальные числа в программировании
ответ
Многие ранние компьютеры имели 36 битной архитектуры (http://en.m.wikipedia.org/wiki/36-bit) и восьмеричное делает намного больше смысла для них, как 3 делится на 36 очень красиво (12 имеет много факторов). Четыре также делит, но нечетное число.
Причина, по которой мы используем восьмеричную во многих отношениях, такая же, как и шестнадцатеричная: нам нужен удобный для чтения формат для быстрого определения битовых строк. Подобно тому, как битовая диаграмма больших двоичных данных может (относительно) легко описываться/указываться и пониматься с использованием шестнадцатеричного числа, где каждая цифра представляет собой точный двоичный паттерн для бит, где бы вы не захотели легко понять битовую строку в группах по 3 вы бы использовали восьмеричный
лучшим примером будет разрешение файлов unix: права на чтение и выполнение прав для владельцев, групп и «других» пользователей логически делятся на 3 группы по 3 бита (rwxrwxrwx), это наиболее удобно для описания этих логических блоков с использованием восьмеричного. например: rw-r--r--
будет 110100100
или 644
Это в основном исторический, на миникомпьютерах с конца 70-х годов бит обычно группировался в 3-х битных группах. И поскольку Unix была разработана на этих машинах в эту эпоху, некоторые восьмеричные реликвии все еще существуют в этой ОС (например, для разрешений файлов) – fvu