В простейшем виде табличный метод заключается в следующем: имеется таблица всех чисел одной системы с соответствующими эквивалентами из другой системы; задача перевода сводится к нахождению соответствующей строки таблицы и выбору из нее эквивалента. Такая таблица очень громоздка и требует большой емкости памяти для хранения.
Другой вид табличного метода заключается в том, что имеются таблицы эквивалентов в каждой системе только для цифр этих систем и степеней основания (положительных и отрицательных); задача перевода сводится к тому, что в выражение ряда для исходной системы счисления надо поставить эквиваленты из новой системы для всех цифр и степеней основания и произвести соответствующие действия (умножения и сложения) по правилам q2-арифметики. полученный результат этих действий будет изображать число в новой системе счисления.
Пример. Перевести десятичное число A = 11310 в двоичную систему счисления, используя таблицу эквивалентов цифр и степеней основания.
Таблица 7.3 – Таблица эквивалентов
Десятичное число | Двоичное число |
110 0100 |
Решение. Подставив значения двоичных эквивалентов десятичных цифр и степеней основания, получим:
Ответ: 11100012.
На практике наиболее часто употребляются двоичная, десятичная и шестнадцатеричная системы счисления. Приведем для них правила взаимного перевода:
Правила перевода целых чисел (результат – целое число):
Из десятичной системы счисления в двоичную и шестнадцатеричную:
Рисунок 8.1 – Перевод числа 19 в двоичную систему счисления
Рисунок 8.2 – Перевод числа 19 в шестнадцатеричную систему счисления
Рисунок 8.3 – Перевод числа 123 в шестнадцатеричную систему счисления
Из двоичной и шестнадцатеричной систем счисления в десятичную:
В этом случае рассчитывается полное значение числа по формуле.
Пример. Выполнить перевод числа 1316 в десятичную систему счисления.
Имеем:
Таким образом, 1316 = 19.
Пример. Выполнить перевод числа 100112 в десятичную систему счисления.
Имеем:
Таким образом, 100112 = 19.
Из двоичной системы счисления в шестнадцатеричную:
Пример. Выполнить перевод числа 100112 в шестнадцатеричную систему счисления.
Поскольку в исходном двоичном числе количество цифр не кратно 4, дополняем его слева незначащими нулями до достижения кратности 4.
Имеем:
Рисунок 8.4 – Перевод числа 100112 в шестнадцатеричную систему счисления
В соответствии с Таблица 7.2:
00112 = 112 = 316
00012 = 12 = 116.
Тогда 100112 = 1316.
Из шестнадцатеричной системы счисления в двоичную:
Пример. Выполнить перевод числа 1316 в двоичную систему счисления.
Согласно Таблица 7.2 имеем:
116 = 12 и после дополнения незначащими нулями 12 = 00012;
316 = 112 и после дополнения незначащими нулями 112 = 00112.
Тогда 1316 = 000100112.
Удаляем незначащие нули - 1316 = 100112.
Правила перевода правильных дробей (результат – правильная дробь):
Из десятичной системы счисления в двоичную и шестнадцатеричную:
Пример. Выполнить перевод числа 0,847 в двоичную систему счисления. Перевод выполнить до четырех значащих цифр после запятой.
Рисунок 8.5 – Перевод числа 0,847 в двоичную систему счисления
В данном примере процедура перевода прервана на четвертом шаге, поскольку получено требуемое число разрядов результата. Очевидно, это привело к потере ряда цифр.
Ответ 0,847 = 0,11012.
Пример. Выполнить перевод числа 0,847 в шестнадцатеричную систему счисления. Перевод выполнить до трех значащих цифр.
Рисунок 8.6 – Перевод числа 0,847 в шестнадцатеричную систему счисления
В данном примере также процедура перевода прервана.
Ответ 0,847 = 0,D8D2.
Из двоичной и шестнадцатеричной систем счисления в десятичную:
В этом случае рассчитывается полное значение числа по формуле, причем коэффициенты ai принимают десятичное значение в соответствии с таблицей.
Пример. Выполнить перевод из двоичной системы счисления в десятичную числа 0,11012.
Имеем:
Расхождение полученного результата с исходным для получения двоичной дроби числом вызвано тем, что процедура перевода в двоичную дробь была прервана.
Ответ 0,11012 = 0,8125.
Пример. Выполнить перевод из шестнадцатеричной системы счисления в десятичную числа 0,D8D16.
Имеем:
Расхождение полученного результата с исходным для получения двоичной дроби числом вызвано тем, что процедура перевода в шестнадцатеричную дробь была прервана.
Ответ 0,D8D16 = 0,84692.
Из двоичной системы счисления в шестнадцатеричную:
Пример. Выполнить перевод из двоичной системы счисления в шестнадцатеричную числа 0,11012.
Имеем: 0,11012 = 0,11012 (дробь делится на тетрады).
В соответствии с Таблица 7.2 11012 = D16.
Тогда имеем 0,11012 = 0,D16.
Пример. Выполнить перевод из двоичной системы счисления в шестнадцатеричную числа 0,00101012.
Добавим справа незначащий ноль: 0,00101012 = 0,001010102.
В соответствии с Таблица 7.2 00102 = 102 = 216 и 10102 = A16.
Тогда имеем 0,00101012 = 0,2A16.
Из шестнадцатеричной системы счисления в двоичную:
Пример. Выполнить перевод из шестнадцатеричной системы счисления в двоичную числа 0,2А16.
Согласно Таблица 7.2 имеем 216 = 00102 и А16 = 10102.
Тогда 0,2А16 = 0,001010102.
Удаляем незначащие нули и получаем ответ: 0,2А16 = 0,00101012.
Правило перевода дробных чисел:
Отдельно переводится целая часть числа, отдельно - дробная. Результаты складываются.
Пример. Выполнить перевод из десятичной системы счисления в шестнадцатеричную числа 19,847. Перевод выполнять до трех значащих цифр после запятой.
Представим исходное число как сумму целого числа и правильной дроби:
Из рассматриваемых выше примеров следует:
19 = 1316;
0,847 = 0,D8D16.
Тогда имеем:
Ответ 19,847 = 13,D8D16.