Перевод числа в восьмеричную систему счисления

Пошаговый алгоритм перевода числа в восьмеричную систему счисления: деление на 8 с остатками и быстрый способ через двоичные триады. Примеры и таблицы.

100₁₀ =144
Число и системы счисления

Решение по шагам

Целую часть делим на 8, пока частное не станет нулём. Остатки, прочитанные снизу вверх, — цифры ответа.

Деление 100 на 8 с остатком
ДелениеОстаток
100 ÷ 8 = 124
12 ÷ 8 = 14
1 ÷ 8 = 01

Ответ: 100₁₀ = 144₈

100₁₀ в других системах счисления

Двоичная (2)
Восьмеричная (8)
Шестнадцатеричная (16)
Римская

Таблица: из десятичной в восьмеричную

Числа подряд из десятичной в восьмеричную систему. Нажмите на строку, чтобы подставить число.
десятичнаявосьмеричная
96140
97141
98142
99143
100144
101145
102146
103147
104150
105151
106152
107153

Что такое восьмеричная система

Восьмеричная система счисления — позиционная система с основанием 8. В ней используется алфавит из восьми цифр: 0, 1, 2, 3, 4, 5, 6, 7. Каждый следующий разряд слева весит в 8 раз больше предыдущего, поэтому запись, например, 567₈ означает:

5 × 8² + 6 × 8¹ + 7 × 8⁰ = 320 + 48 + 7 = 375₁₀

Перевести число в восьмеричную систему счисления чаще всего требуется из привычной десятичной формы. Существует два надёжных способа — универсальный через деление и быстрый через двоичную систему.

Способ 1: деление десятичного числа на 8

Этот метод работает для любого целого десятичного числа и не требует знания других систем счисления.

Алгоритм

  1. Разделите исходное число на 8. Запишите частное и остаток (он всегда лежит в диапазоне от 0 до 7).
  2. Возьмите полученное частное и снова разделите на 8. Запишите новый остаток.
  3. Повторяйте деление до тех пор, пока очередное частное не станет равно нулю.
  4. Запишите все остатки в обратном порядке — от последнего к первому. Получившаяся последовательность цифр и есть искомое восьмеричное число.

Пример: переводим 375₁₀

ШагДелимоеЧастноеОстаток
1375467
24656
3505

Остатки снизу вверх: 5 → 6 → 7. Получаем 375₁₀ = 567₈.

Пример: переводим 98₁₀

  • 98 ÷ 8 = 12, остаток 2
  • 12 ÷ 8 = 1, остаток 4
  • 1 ÷ 8 = 0, остаток 1

Остатки снизу вверх: 142₈. Проверка: 1 × 64 + 4 × 8 + 2 = 98 — совпадает.

Пример: переводим 327₁₀

  • 327 ÷ 8 = 40, остаток 7
  • 40 ÷ 8 = 5, остаток 0
  • 5 ÷ 8 = 0, остаток 5

Результат: 327₁₀ = 507₈. Проверка: 5 × 64 + 0 × 8 + 7 = 327 — верно.

Если в строке остатка получается 0, его всё равно нужно записать — он занимает конкретный разряд восьмеричного числа.

Способ 2: быстрый перевод через двоичную систему

Поскольку 8 = 2³, каждая восьмеричная цифра точно соответствует трём двоичным разрядам (триаде). Это позволяет переводить числа из двоичной системы в восьмеричную напрямую, без десятичного «посредника».

Алгоритм

  1. Разбейте двоичное число на группы по 3 цифры, двигаясь справа налево.
  2. Если в самой левой группе меньше 3 цифр — дополните её нулями слева.
  3. Замените каждую триаду соответствующей восьмеричной цифрой по таблице.

Таблица соответствия триад

Двоичная триадаВосьмеричная цифра
0000
0011
0102
0113
1004
1015
1106
1117

Пример: 1011101₂ → восьмеричная

Разбиваем справа налево: 001 011 101. По таблице: 1, 3, 5. Итог: 135₈.

Чтобы перевести десятичное число этим способом, сначала получите его двоичную запись (например, тем же делением на 2), а затем замените триады цифрами.

Как перевести дробную часть

Для дробной части десятичного числа алгоритм меняется на противоположный: вместо деления выполняется умножение на 8.

  1. Умножьте дробную часть числа на 8.
  2. Целая часть результата — очередная цифра восьмеричной дроби.
  3. Для получения следующей цифры умножайте оставшуюся дробную часть на 8.
  4. Повторяйте до нужной точности или до тех пор, пока дробная часть не станет нулём.

Пример: 0,625₁₀ → восьмеричная

  • 0,625 × 8 = 5,0 → целая часть 5, дробная часть 0.

Дробная часть обнулилась за один шаг, поэтому перевод завершён: 0,625₁₀ = 0,5₈.

Обратный перевод для самопроверки

Если нужно убедиться в правильности результата, разложите полученное восьмеричное число по степеням восьмёрки и сложите:

142₈ = 1 × 8² + 4 × 8¹ + 2 × 8⁰ = 64 + 32 + 2 = 98₁₀ ✓

Этот же приём пригодится, если требуется перевести восьмеричное число обратно в десятичное.

Частые ошибки при переводе

  • Перепутать порядок остатков. Восьмеричное число читается от последнего остатка к первому, а не наоборот.
  • Использовать цифры 8 или 9. В восьмеричной системе таких цифр нет — их появление означает, что где-то закралась ошибка.
  • Забыть дополнить нулями левую триаду при переводе из двоичной системы. Без этого младшие разряды числа сместятся.
  • Применять деление к дробной части. Для дробной части нужен метод умножения, иначе ответ будет неверным.

Частые вопросы

Почему в восьмеричной системе ровно восемь цифр?

Основание системы счисления определяет количество используемых символов. Для восьмеричной системы основание равно 8, поэтому алфавит состоит из цифр 0–7. Цифры 8 и 9 в ней не существуют — если они появились в записи, перевод выполнен с ошибкой.

Чем восьмеричная система отличается от шестнадцатеричной?

У шестнадцатеричной системы основание 16 и расширенный алфавит: цифры 0–9 и буквы A–F. Обе системы часто используются как компактная запись двоичных данных, но восьмеричная заменяет три бита, а шестнадцатеричная — четыре.

Как перевести дробную десятичную часть в восьмеричную?

Алгоритм для дробной части обратный: вместо деления выполняется умножение на 8. Целая часть результата каждого умножения становится очередной цифрой и читается сверху вниз, пока не получится нужная точность или нулевая дробная часть.

Можно ли перевести большое десятичное число в восьмеричную вручную?

Да, метод деления работает для любого размера числа, но при больших значениях расчёт получается длинным. В таком случае удобнее сначала перевести число в двоичную систему, а затем заменить каждые три двоичных разряда одной восьмеричной цифрой.

Как проверить, что восьмеричное число переведено правильно?

Разложите полученное восьмеричное число по степеням восьмёрки и сложите результаты. Если итог совпадает с исходным десятичным числом, перевод выполнен без ошибок.

Где сейчас применяется восьмеричная система?

Чаще всего — в программировании для записи прав доступа в UNIX-системах (например, chmod 755), при работе с некоторыми форматами данных и в учебных курсах по информатике и цифровой электронике.