Косвенные методы перевода служат для более быстрого, а, возможно, и удобного перевода чисел между двоичной, восьмеричной и шестнадцатеричной системами счисления (Рис.1).
Рис. 1
Эти же методы помогут осуществить и перевод чисел между 2с/с и 10с/с через 8с/с или 16с/с и (Рис. 2, Рис.3) .
Рис. 2 Рис. 3
Восьмеричная и шестнадцатеричная системы счисления тесно связаны с двоичной системой счисления, т.к. числа 8 и 16 являются соответственно 3 и 4 степенью числа 2. Существуют более быстрые способы перевода между этими тремя системами счисления. Для удобства сведем системы счисления в таблицу:
10с/с
2с/с
8с/с
16с/с
А
В
С
D
E
F
Правило 5. Перевод из 2с/с в 8с/с
Двоичное число разбиваем по 3 разряда (триада) влево (для целой части) и вправо (для дробной части) от запятой. При необходимости добавляем незначащие нули. Каждую полученную триаду заменяем восьмеричной цифрой (см. Таблицу 1). Получаем число в 8с/с.
Пример: Преобразуем число 11111101100100,01101010012 в 8с/с
Разобьем число на триады: 11 111 101 100 100,011 010 100 12,
Добавим незначащие нули слева и справа:
011 111 101 100 100 , 011 010 100 100
Заменим триады восьмеричными цифрами:
Запишем восьмеричное число, не забывая про десятичную запятую:
37544,32448
Правило 6. Перевод из 2с/с в 16с/с
Двоичное число разбиваем по 4 разряда (тетрада) влево (для целой части) и вправо (для дробной части) от запятой. При необходимости добавляем незначащие нули. Каждую полученную тетраду заменяем шестнадцатеричной цифрой (см. Таблицу 1). Получаем число в 16с/с.
Пример: Преобразуем число 11111101100100,01101010012 в 16с/с
Разобьем число на триады: 11 1111 0110 0100 , 0110 1010 01.
Запишем шестнадцатеричное число, не забывая про десятичную запятую:
3F64,6A416.
Правило 7. Перевод из 8с/с в 2с/с
Каждая восьмеричная цифра заменяется 3 разрядами двузначного числа. Отбрасываются незначащие нули слева (в целой части числа) и справа (в дробной части числа). Получаем число в 2с/с.
Пример: Переведем 37544,32448 в 2с/с
Запишем двоичные цифры, отбрасывая незначащие нули, и не забудем про десятичную запятую:
11111101100100,01101010012
Правило 8. Перевод из 16с/с в 2с/с
Каждая шестнадцатеричная цифра заменяется 4 разрядами двузначного числа. Отбрасываются незначащие нули слева (в целой части числа) и справа (в дробной части числа). Получаем число в 2с/с.
Пример: Переведем число 3F64,6A416 в 2с/с
Запишем двоичные цифры, отбрасывая незначащие нули, и не забудем про десятичную запятую: