Кодирование
Кодирование
информации
информации
  • Кодирование информации без компьютеров
  • Системы кодирования числовой информации
  • Двоичная система счисления
  • Перевод чисел из одной системы счисления в другую
  • Кодирование информации на компьютере
  • Вопросы и упражнения
  • Перевод чисел из одной системы счисления в другую

    Перевод чисел из десятичной системы счисления в другую позиционную

        Как мы уже отмечали, человек привык работать в десятичной системе счисления, а ЭВМ ориентирована на двоичную систему. Поэтому общение человека с машиной невозможно без создания простых и надёжных алгоритмов перевода чисел из одной системы в другую и наоборот. Итак, как осуществить перевод чисел из десятичной системы в двоичную?
        Допустим, надо перевести число 11 в двоичную систему счисления. Разделим 11 на 2. Получим частное 5 и остаток 1. Следовательно, в двоичной записи числа 11 последняя цифра равна 1. Для нахождения второй цифры разделим найденное нами частное 5 снова на 2. Получим частное 2 и остаток 1. Следовательно, вторая цифра с конца в двоичной записи числа 11 тоже равна 1. Частное 2 снова делим на 2. Получим 1 и 0 в остатке. Полученная 1 и есть первая цифра в двоичной записи числа 11. Остаток от последнего деления 0 - вторая цифра.

        Если необходимо преобразовать нецелое число - десятичную дробь, то производим следующие действия:
        1. Целую часть числа преобразовываем в двоичную систему способом, описанным выше.
        2. Дробную часть необходимо преобразовывать умножением на основание системы, в которую мы переводим число.

        В результате умножения дробной части - числа 0,7 на основание системы - число 2 получим 1,4. Целую часть данного числа (цифру 1) выделяем, а дробную часть - число 0,4 снова умножаем на 2.
        Очевидно, что процесс перевода числа 0,7 может продолжаться бесконечно. Действительно, за шесть шагов мы можем получить число 0,101100, а за семь шагов получили бы 0,1011001, которое является более точным представлением числа 0,7 в двоичной системе. Такой бесконечный процесс обрывают на некотором шаге, когда считают, что получена требуемая точность представления числа. В результате перевода получим ответ:

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


    в начало

    Перевод чисел из двоичной системы счисления в системы, родственные двоичной и обратно.

        Большие числа в двоичной системе счисления имеют очень громоздкие записи. Конечно, можно перевести число в десятичную систему и записать его в таком виде, а потом, когда оно понадобится, перевести его обратно, но все эти переводы очень трудоёмки. На помощь приходят системы, родственные двоичной - восьмеричная и шестнадцатеричная. Перевод из родственной системы в двоичную и обратно может быть мгновенно выполнен в уме.
        Системами счисления родственными двоичной считаются такие системы, основания которых являются значением степени числа 2.
        Например, четверичная, восьмеричная и шестнадцатеричная системы счисления являются системами, родственными двоичной.

        Для перевода чисел из двоичной системы счисления в системы, родственные двоичной, необходимо выполнить следующие действия:
        1.Разбить число на некоторое количество разрядов, равное степени числа 2 основания системы, в которую переводим.
        2.Если в старших и младших разрядах после разбиения не хватает знаков, то добавить их нулями.
        3.По таблице определить значение пары, триады, тетрады и т.п. разрядов, записанных в двоичной системе счисления, соответственно значению в той системе, в которую переводим.
        
    Например, дано число 1111010111010,0111, записанное в двоичной системе счисления. Для перевода его в восьмеричную систему счисления разобьём число на триады (т.к. основание числа 2 равно 3), начиная от запятой, вправо и влево: 1.111.010.111.010,011.1 . Разбиение показано точками. В старшей и младшей триадах не хватает разрядов. Дополним их нулями: 001.111.010.111.010,011.100. По таблице определим восьмеричные цифры, соответствующие триадам. Получается восьмеричное число 17272,34.
        Рассмотрим ещё один пример: дано число 1111010111010,0111, записанное в двоичной системе счисления. Для перевода его в шестнадцатеричную систему счисления разобьём число на тетрады (т.к. основание числа 2 равно 4): 1.1110.1011.1010,0111. В старшей тетраде не хватает разрядов. Дополним их нулями: 0001.1110.1011.1010,0111. По таблице определим шестнадцатеричные знаки, соответствующие тетрадам. Получается шестнадцатеричное число 1EBA,7.
         Пусть дано то же число. Для перевода его в четверичную систему счисления разобьём число на пары (т.к. основание числа 2 равно 2): 1.11.10.10.11.10.10,01.11. В старшей паре не хватает одного разряда. Дополним его нулём: 01.11.10.10.11.10.10,01.11. Определим четверичные цифры, соответствующие парам. Получается четверичное число 1322322,13.

    Как осуществить обратный перевод:

        Пусть дано число 73,62 , записанное в восьмеричной системе счисления. Необходимо перевести его в двоичную систему. Для этого каждую цифру числа запишем в виде триады из 0 и 1, соответствующей значению восьмеричной цифры в двоичной системе счисления: 111.011,110.010.

        Рассмотрим ещё один пример: дано число 7В3,Е6, записанное в шестнадцатеричной системе счисления. Необходимо перевести его в двоичную систему. Для этого каждую цифру шестнадцатеричного числа запишем в виде тетрады из 0 и 1,соответствующей значению знака в двоичной системе счисления: 0111.1011.0011,1110.0110.

    Перевод чисел из р-ичной позиционной системы счисления в десятичную.

        Все позиционные системы счисления, о которых мы говорили выше, строятся по одному общему принципу. Выбирается некоторое число р - основание системы счисления, и каждое число N представляется в виде комбинации его степеней с коэффициентами, т.е. произвольное число в системе счисления с основанием р имеет вид:

        Если необходимо перевести двоичное число 1011011,11 в десятичную систему, воспользуемся этой формулой. Основание системы р=2, к - коэффициент, указывающий количество знаков в числе влево от запятой, к=7; а - знаки числа с соответствующими им коэффициентами.

        Воспользуемся формулой для перевода шестнадцатеричного числа ВF,1D в десятичную систему. Основание системы р=16, к=2.

        Пусть необходимо перевести восьмеричное число 254,262 в десятичную систему. Основание системы р=8, к=3


    в начало

    2007 © Copyright by L.Gazizova (E-mail: leniza@hotbox.ru), WebMasters N.Woit, R.Akzamutdinov, Y.Bibikova

    Hosted by uCoz