Восьмеричная система счисления
Связь с двоичной системой счисления
Алгоритм перевода восьмеричного числа в двоичную систему счисления
Алгоритм перевода двоичного числа в восьмеричную систему счисления
Применение восьмеричной системы
Более интересен перевод из восьмеричной системы в двоичную и обратно. Конечно, можно перевести число сначала в десятичную систему, а потом — в двоичную, но для больших чисел этот способ требует достаточно сложных вычислений и может приводить к ошибкам.
Переведите число 158 в десятичную систему счисления, а потом — из десятичной в двоичную.
Оказывается, можно сделать перевод из восьмеричной системы в двоичную напрямую, используя тесную связь между этими системами: их основания связаны равенством 23 = 8. Покажем это на примере восьмеричного числа 7538. Запишем его в развёрнутой форме:
7538 = 7 • 82 + 5 • 81 + 3-8° = 7 - 26 + 5 - 23 + 3 - 2°.
Теперь переведём отдельно каждую цифру в двоичную систему и также запишем в развёрнутой форме:
7 = 1112 = 1 • 22 + 1 • 21 + 1-2°, 5 = 1012 = 1-22 + 1-2°, 3 = 112 = 1 • 21 + 1°.
Подставим эти выражения в предыдущее равенство:
7538 = (1 • 22 + 1 • 21 + 1 • 2°) • 26 + (1 • 22 + 1 • 2°) • 23 + (1 • 21 + 1 • 2°) • 2°.
Раскрывая скобки, мы получим разложение исходного числа по степеням двойки, т. е. его развёрнутую запись в двоичной системе счисления (здесь для отсутствующих степеней числа 2 добавлены нулевые слагаемые):
Таким образом, 7538= 111 101 0112. Двоичная запись разбита на триады (группы из трех цифр), каждая триада — это двоичная запись одной цифры исходного восьмеричного числа. Фактически мы каждую восьмеричную цифру отдельно переводим в двоичную систему (табл. 2.2).
Таблица 2.2
Следующая страница Алгоритм перевода восьмеричного числа в двоичную систему счисления