Перевод дробных чисел из десятичной системы счисления в двоичную
Перевод чисел из различных систем счисления в двоичную сводится к их представлению в виде различных комбинаций двух цифровых символов этой системы – 0 и 1. Для перевода из десятичной системы в двоичную чаще всего используется метод последовательного деления на 2, где 2 – это разряд двоичного кода аналогично 10 в десятичном счислении.
Однако этот метод подходит при переводе целых чисел, для дробей же используют, напротив, умножение. А именно умножают дробную часть на 2 последовательно до тех пор, пока не появится целая часть. При этом удачное умножение, дающее в результате число, большее 1, приносит итоговому двоичному числу цифру 1. А неудачное, после которого число все еще меньше 1, дает цифру 0. При этом цифры дроби в двоичном виде записываются после запятой также, как в исходной десятичной.
3Рассмотрим этот немудреный способ на конкретном примере. Для начала возьмите простую десятичную дробь 0,2. Умножайте последовательно на 2:0,2*2 = 0,4 => 0,0_2;0,4*2 = 0,8 => 0,00_2;0,8*2 = 1,6 => 0,001_2;
Отбросьте целую часть и продолжайте те же действия:0,6*2 = 1,2 => 0,0011_2;Снова отбросьте целую часть и вы вернетесь к числу 0,2. Двоичная дробь оказалась цикличной, т.е. повторяющейся, сокращенно запишите:0,2_10 = 0,(0011)_2, где скобки указываются на повторяемость одной и той же группы цифр.
Таким образом,для перевода в двоичную систему дроби с целой частью сначала переводится именно она, а потом уже число после запятой. Например, переведите число 9,25.Для перевода целой части воспользуйтесь методом последовательного деления: 9/2 = 4 и 1 в остатке;4/2 = 2 и 0 в остатке;2/2 = 1 и 0 в остатке;½ = 0 и 1 в остатке. Запишите полученные остатки справа налево: 9_10 = 1001_2.
6Теперь переведите дробную часть:0,25*2 = 0,5 => 0;0,5*2 = 1 => 1.На этот раз вам повезло, дробь оказалась не цикличной. Запишите итог:9,25_10 = 1001,01_2.
Перевод десятичных дробей в двоичную систему счисления заключается в поиске целых частей при умножении на 2. Например, переведём десятичную дробь 0,625 в двоичную систему счисления. Чтобы найти первую после запятой цифру двоичной дроби, нужно умножить заданное число на 2 и выделить целую часть произведения.
0,625 · 2 = 1,250 (целая часть равна 1);
0,250 · 2 = 0,500 (целая часть равна 0);
0,500 · 2 = 1,000 (целая часть равна 1).
Дробная часть последнего произведения равна 0. Перевод закончен. Записываем в одну строку полученное значение целой части, начиная с первой цифры: 0,62510 = 0,1012. Каждый раз в умножении участвует только дробная часть десятичного числа.
Правило перевода: Чтобы перевести положительную десятичную дробь в двоичную, нужно дробь умножить на 2. Целую часть произведения взять в качестве первой цифры после запятой в двоичной дроби, а дробную часть вновь умножить на 2. В качестве следующей цифры взять целую часть этого произведения, а дробную часть произведения снова умножить на 2 и т.д.
При переводе десятичной дроби в двоичную может получиться периодическая дробь.
Пример. Переведем десятичную дробь 0,3 в двоичную систему счисления.
0,3 · 2 = 0,6 (целая часть равна 0);
0,6 · 2 = 1,2 (целая часть равна 1);
0,2 · 2 = 0,4 (целая часть равна 0);
0,4 · 2 = 0,8 (целая часть равна 0);
0,8 · 2 = 1,6 (целая часть равна 1);
0,6 · 2 = 1,2 (целая часть равна 1);
Дробная часть 0,6 уже была на втором шаге вычислений, поэтому вычисления начнут повторяться. Следовательно, в двоичной системе счисления число 0,3 представляется периодической дробью.
Правило перевода десятичной дроби в двоичную систему
Пример 3.1. Выполнить перевод числа 19 в двоичную систему счисления:
Пример 3.2. Выполнить перевод числа 19 в шестнадцатеричную систему счисления:
Пример 3.3. Выполнить перевод числа 123 в шестнадцатеричную систему счисления:
Пример 3.4. Выполнить перевод числа 1316 в десятичную систему счисления. Имеем:
1316 = 1*16 1 + 3*16 0 = 16 + 3 = 19.
Таким образом, 1316 = 19.
Пример 3.5. Выполнить перевод числа 100112 в десятичную систему счисления. Имеем:
100112 = 1*2 4 + 0*2 3 + 0*2 2 + 1*2 1 + 1*2 0 = 16+0+0+2+1 = 19.
Таким образом, 100112 = 19.
Пример 3.6. Выполнить перевод числа 100112 в шестнадцатеричную систему счисления.
Поскольку в исходном двоичном числе количество цифр не кратно 4, дополняем его слева незначащими нулями до достижения кратности 4 числа цифр. Имеем:
Пример 3.7. Выполнить перевод числа 1316 в двоичную систему счисления.
По таблице имеем: 116 = 12 и после дополнения незначащими нулями 12 = 00012; 316 = 112 и после дополнения незначащими нулями 112 = 00112. Тогда 1316 = 000100112. После удаления незначащих нулей имеем 1316 = 100112.
В данном примере процедура перевода прервана на четвертом шаге, поскольку получено требуемое число разрядов результата. Очевидно, это привело к потере ряда цифр.
Таким образом, 0,847 = 0,11012.
Пример 3.9. Выполнить перевод числа 0,847 в шестнадцатеричную систему счисления. Перевод выполнить до трех значащих цифр.
В данном примере также процедура перевода прервана. Таким образом, 0,847 = 0,D8D2.
3. Из двоичной системы счисления в шестнадцатеричную:
Пример 3.13. Выполнить перевод из двоичной системы счисления в шестнадцатеричную числа 0,00101012.
Поскольку количество цифр дробной части не кратно 4, добавим справа незначащий ноль: 0,00101012 = 0,001010102. В соответствии с таблицей 00102 = 102 = 216 и 10102 = A16. Тогда имеем 0,00101012 = 0,2A16.
Пример 3.15. Выполнить перевод из десятичной системы счисления в шестнадцатеричную числа 19,847. Перевод выполнять до трех значащих цифр после запятой.
Представим исходное число как сумму целого числа и правильной дроби:
19,847 = 19 + 0,847.
Как следует из примера 3.2, 19 = 1316; а в соответствии с примером 3.9 0,847 = 0,D8D16. Тогда имеем:
19 + 0,847 = 1316 + 0,D8D16 = 13,D8D16.
Таким образом, 19,847 = 13,D8D16.
Перевод дробных чисел из десятичной системы счисления в двоичную
Перевод чисел из различных систем счисления в двоичную сводится к их представлению в виде различных комбинаций двух цифровых символов этой системы – 0 и 1. Для перевода из десятичной системы в двоичную чаще всего используется метод последовательного деления на 2, где 2 – это разряд двоичного кода аналогично 10 в десятичном счислении.
Однако этот метод подходит при переводе целых чисел, для дробей же используют, напротив, умножение. А именно умножают дробную часть на 2 последовательно до тех пор, пока не появится целая часть. При этом удачное умножение, дающее в результате число, большее 1, приносит итоговому двоичному числу цифру 1. А неудачное, после которого число все еще меньше 1, дает цифру 0. При этом цифры дроби в двоичном виде записываются после запятой также, как в исходной десятичной.
3Рассмотрим этот немудреный способ на конкретном примере. Для начала возьмите простую десятичную дробь 0,2. Умножайте последовательно на 2:0,2*2 = 0,4 => 0,0_2;0,4*2 = 0,8 => 0,00_2;0,8*2 = 1,6 => 0,001_2;
Отбросьте целую часть и продолжайте те же действия:0,6*2 = 1,2 => 0,0011_2;Снова отбросьте целую часть и вы вернетесь к числу 0,2. Двоичная дробь оказалась цикличной, т.е. повторяющейся, сокращенно запишите:0,2_10 = 0,(0011)_2, где скобки указываются на повторяемость одной и той же группы цифр.
Таким образом,для перевода в двоичную систему дроби с целой частью сначала переводится именно она, а потом уже число после запятой. Например, переведите число 9,25.Для перевода целой части воспользуйтесь методом последовательного деления: 9/2 = 4 и 1 в остатке;4/2 = 2 и 0 в остатке;2/2 = 1 и 0 в остатке;½ = 0 и 1 в остатке. Запишите полученные остатки справа налево: 9_10 = 1001_2.
6Теперь переведите дробную часть:0,25*2 = 0,5 => 0;0,5*2 = 1 => 1.На этот раз вам повезло, дробь оказалась не цикличной. Запишите итог:9,25_10 = 1001,01_2.
Перевод десятичных дробей в двоичную систему счисления заключается в поиске целых частей при умножении на 2. Например, переведём десятичную дробь 0,625 в двоичную систему счисления. Чтобы найти первую после запятой цифру двоичной дроби, нужно умножить заданное число на 2 и выделить целую часть произведения.
0,625 · 2 = 1,250 (целая часть равна 1);
0,250 · 2 = 0,500 (целая часть равна 0);
0,500 · 2 = 1,000 (целая часть равна 1).
Дробная часть последнего произведения равна 0. Перевод закончен. Записываем в одну строку полученное значение целой части, начиная с первой цифры: 0,62510 = 0,1012. Каждый раз в умножении участвует только дробная часть десятичного числа.
Правило перевода: Чтобы перевести положительную десятичную дробь в двоичную, нужно дробь умножить на 2. Целую часть произведения взять в качестве первой цифры после запятой в двоичной дроби, а дробную часть вновь умножить на 2. В качестве следующей цифры взять целую часть этого произведения, а дробную часть произведения снова умножить на 2 и т.д.
При переводе десятичной дроби в двоичную может получиться периодическая дробь.
Пример. Переведем десятичную дробь 0,3 в двоичную систему счисления.
0,3 · 2 = 0,6 (целая часть равна 0);
0,6 · 2 = 1,2 (целая часть равна 1);
0,2 · 2 = 0,4 (целая часть равна 0);
0,4 · 2 = 0,8 (целая часть равна 0);
0,8 · 2 = 1,6 (целая часть равна 1);
0,6 · 2 = 1,2 (целая часть равна 1);
Дробная часть 0,6 уже была на втором шаге вычислений, поэтому вычисления начнут повторяться. Следовательно, в двоичной системе счисления число 0,3 представляется периодической дробью.
Ответ: 0,310 = 0,0(1001)2.
Перевод конечных дробей в позиционных системах счисления
Для перевода правильных дробей из десятичной системы счисления в систему счисления с основанием S нужно умножать исходную дробь последовательно на основание системы счисления S. Полученные в результате умножения целые части произведения являются соответствующими разрядами дробного числа в системе счисления с основанием S.
Перевод правильной конечной р-ичной дроби в десятичную систему счисленияосуществляется аналогично переводу целого числа через развернутую форму представления числа.
Замечание.
При вычислении десятичного значения р-ичной дроби по развернутой форме с использованием калькулятора также целесообразно пользоваться схемой Горнера, что минимизирует количество арифметических действий и исключает возведение в степень.
Алгоритм перевода конечной р-ичной дроби в десятичную СС:
1. Целая часть числа переводится в десятичную систему отдельно от дробной части, согласно правилам перевода.
2. Каждая цифра дробной части р-ичного числа переводится в десятичную систему.
3. Полученные числа нумеруются слева направо, начиная с единицы.
4. Число Р переводится в десятичную систему.
Контрольные вопросы:
1. Что обеспечивает система счисления?
2. Какая система счисления называется позиционной?
3. Какая система счисления называется непозиционной?
4. Какое равенство отожествляется с позиционной системой счисления?
5. Приведите примеры позиционных и непозиционных систем счисления.
6. Какая арифметика называется недесятичной?
7. Как производится сложение, вычитание, умножение, и деление в двоичной системе счисления?
8. Как производится сложение, вычитание, умножение, и деление в восьмеричной системе счисления?
9. Как производится сложение, вычитание, умножение, и деление в шестнадцатеричной системе счисления?






