Конвертер из десятичной в восьмеричную систему
Восьмеричная система это система счисления с основанием 8, которую чаще всего можно встретить в правах доступа к файлам в Unix (chmod 755) и в старых языках программирования. Этот конвертер преобразует любое целое десятичное число в восьмеричную форму. В руководстве ниже объясняется метод деления на 8, чтобы вы могли проверить результат вручную.
Как преобразовать десятичное число в восьмеричное
-
1
Введите целое десятичное число
Введите любое целое число, например 255 или 4096.
-
2
Прочитайте восьмеричный результат
Восьмеричные цифры появляются мгновенно, в простом виде без префикса, готовые к копированию.
-
3
Изучите метод
В руководстве ниже объясняется процесс деления на 8 и стек остатков, из которого складываются восьмеричные цифры, чтобы вы могли проверить результат вручную.
-
4
Правило для отрицательных чисел
Отрицательные числа преобразуются через их 64-битное представление в дополнительном коде, то есть так же, как их выводит формат `%o` в C.
Как деление на 8 формирует восьмеричные цифры
Чтобы преобразовать десятичное число в восьмеричное, делите его на 8 и записывайте остатки снизу вверх:
83 / 8 = 10 остаток 3
10 / 8 = 1 остаток 2
1 / 8 = 0 остаток 1
Читаем снизу вверх: 123
Таким образом, десятичное 83 равно восьмеричному 123. Каждая восьмеричная цифра занимает ровно три бита, именно поэтому восьмеричная система применяется в записи прав доступа Unix, где три бита кодируют чтение, запись и выполнение для каждого класса пользователей.
Ключевые значения
| Десятичное | Восьмеричное | Пояснение |
|---|---|---|
| 7 | 7 | Наибольшая одиночная восьмеричная цифра |
| 8 | 10 | Первое двузначное восьмеричное значение |
| 64 | 100 | Первое трёхзначное восьмеричное значение |
| 511 | 777 | Максимум для 9 бит, полные права Unix |
| 4 096 | 10000 | Первое пятизначное восьмеричное значение |
Шпаргалка по правам доступа Unix
Привычные числа chmod, восьмеричные: каждая цифра представляет собой трёхбитную маску для владельца, группы и всех остальных.
- 4 означает чтение (read)
- 2 означает запись (write)
- 1 означает выполнение (execute)
Так, 755 означает, что у владельца есть 7 (rwx), а у группы и остальных, по 5 (r-x). 644 означает, что у владельца rw-, а у всех остальных r--.
Подводный камень: ведущий ноль
В языке C ведущий ноль означает восьмеричное число: int x = 010; присваивает 8, а не 10. JavaScript отказался от этого соглашения, потому что оно всех запутывало. Python убрал его в версии 3.0. Если ваш код современный, используйте префикс 0o, чтобы избежать незаметных ошибок с расхождением в восемь раз.
Часто задаваемые вопросы
Потому что в системе с основанием 8 в каждой позиции ровно восемь допустимых цифр. Цифра 8 не может существовать в восьмеричной системе так же, как 10 не может существовать в десятичной; если остаток достигает 8, он становится 10 в следующем разряде.
Редко. Некоторые встроенные системы и устаревшие форматы файлов по-прежнему опираются на восьмеричную систему, но в большинстве современных задач её заменила шестнадцатеричная: одна шестнадцатеричная цифра аккуратно соответствует четырём битам (полубайту), а не трём.
Нет. Этот конвертер работает только с целыми числами. Если ввести значение с десятичной точкой, преобразуется только целая часть: 12.9 даст тот же результат, что и 12. Десятичная запятая не распознаётся.
Преобразование выполняется на сервере, поэтому введённое число передаётся в рамках взаимодействия со страницей и может попадать в ссылку при переходе между шагами инструмента. Оно не сохраняется и не передаётся третьим лицам.
Сопутствующие инструменты
Справочная таблица ASCII
Полная таблица ASCII от 0 до 127 с десятичным, шестнадцатеричным, восьмеричным и двоичным представлением, а также записью числовых ссылок HTML, включая NUL, LF и DEL.
Справочник сочетаний клавиш
Ищите документированные сочетания по умолчанию для VS Code, Chrome и Bash с GNU Readline в macOS, Windows и Linux.
Справочник символов HTML
Справочник HTML-сущностей с поиском, их именованными и числовыми кодами, а также копированием специальных символов и знаков одним кликом.
Счетчик FPS
Измерьте FPS браузера через requestAnimationFrame: сглаживание, минимальная и максимальная частота кадров, порог предупреждения и график по желанию. Работает локально, без загрузок и API.
Генератор случайных букв
Генерируйте случайные буквы A-Z. Выберите количество, верхний или нижний регистр либо смешанный вариант для игр, заданий и уроков.
Генератор цветовой палитры
Создавайте монохромные, аналоговые, комплементарные, триадные или тетрадные палитры из базового HEX-цвета и экспортируйте готовые CSS-переменные.
Инструмент доступен на других языках
- Decimal to Octal Converter [EN]
- Chuyển đổi thập phân sang bát phân [VI]
- Dezimal zu Oktal Konverter [DE]
- Decimaal naar octaal omrekenaar [NL]
- Decimal till oktal-omvandlare [SV]
- Convertidor de Decimal a Octal [ES]
- 10진수에서 8진수로 변환기 [KO]
- Conversor de Decimal para Octal [PT]
- Konwerter dziesiętny na ósemkowy [PL]
- Convertisseur Décimal en Octal [FR]
- 十进制转八进制转换器 [ZH]
- محول العشري إلى الثماني [AR]
- ตัวแปลงเลขฐานสิบเป็นฐานแปด [TH]
- 10進数から8進数への変換ツール [JA]
- Ondalıktan Sekizliğe Çevirici [TR]
- Konverter Desimal ke Oktal [ID]
- Convertitore da Decimale a Ottale [IT]