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

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

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

После того, как я сделал несколько калькуляторов для перевода между разными системами счисления — вот список от первой до последней версии, от самого простого к сложному: Перевод числа в другие системы счисления, Перевод из десятичной системы счисления, Перевод из одной системы счисления в другую — в комментариях стали периодически спрашивать — а что же, мол, дробные числа, как же их переводить? И когда спросили больше трех раз, я таки решил изучить этот вопрос.

Результатом стал калькулятор, который вы видите ниже, он умеет переводить и дробные числа в том числе. Как водится, для любознательных под калькулятором немного теории.

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

Теперь теория. Я, честно говоря, думал, что вопрос довольно сложный, но при ближайшем рассмотрении все оказалось проще простого. Надо было только держать в голове тот факт, что речь идет о позиционных системах счисления.
В чем тут суть? Рассмотрим на примере десятичного числа 6.125. Это дробное число в десятичной системе счисления представляется так:

Все просто, не так ли? Та же самая простота сохраняется и при записи дробного числа в любой другой системе счисления. Возьмем, например, горячо любимую каждым программистом двоичную систему и число, например, 110.001. Эта запись есть не что иное как

Да-да, число для примера было выбрано не просто так. То есть, 110.001 в двоичной системе есть 6.125 в десятичной. Принцип, я думаю, ясен.

Есть только одно но — все-таки из-за того, что здесь участвую дроби с разными знаменателями, не всегда одно и тоже число можно одинаково точно выразить в разных системах счисления. Что я имею в виду?

Продолжать можно еще довольно долго, но уже сейчас видно, что 0.8 в десятичной системе это 0.11001100. (дальше очень много цифр) в двоичной. Если честно, то это периодическое число с перидом 1100, так что мы никогда не сможем выразить его точно в двоичной системе счисления. 110011001100. будет продолжаться до бесконечности.

Поэтому перевод дробного числа из одной системы счисления в другую чаще всего дает погрешность. Погрешность эта зависит от того, сколько разрядов мы используем для записи дробной части переведенного числа. Возьмем пример с числом 0.8 и используем для записи его двоичного представления шесть разрядов после запятой — 0.110011. Полученное число вовсе не 0.8, а 0.796875, разница при этом составляет 0.003125. Это и есть наша погрешность перевода десятичного числа 0.8 в двоичный вид при использовании шести разрядов после запятой.

Источник

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

Пример 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.

Источник

Перевод дробных чисел из одной системы

Счисления в другую

Примеры перевода правильных дробей в десятичную систему счисления.

1. Перевести в десятичную систему счисления число 0,10102

0,10102= 1×2 -1 + 0×2 -2 + 1×2 -3 + 0×2 -4 = 0,5 + 0,125 = 0,62510;

2. Перевести в десятичную систему счисления число 0,92416

0,92416 = 9×16 -1 + 2×16 -2 + 4×16 -3 = 9/16 + 2/256 + 4/4096 = = 2340/4096 = 0,571289062510 .

Перевод десятичной дроби в другую систему счисления производится в следующей последовательности:

— умножить исходную дробь на основание новой системы счисления;

— выделить из полученного результата целую часть и принять ее за цифру очередного разряда искомой дроби;

— если достигнута требуемая точность, то дальнейшие действия прекращаются, в противном случае из последнего результата умножения выделяется дробная часть, принимается за исходное число и описанная выше последовательность действий повторяется;

— искомая дробь в новой системе счисления записывается в виде последовательности целых частей полученных произведений, начиная с первого.

Пример

Перевести в двоичную систему счисления десятичную

дробь 0,231510 (с точностью до 5 знаков после запятой)

´2 = 0 4630

´ 2 = 09260

´ 2 = 18520

´ 2 = 17040

´2 = 14080

´ 0,231510 = 0,001112

Перевод неправильных дробей из одной системы счисления в другую выполняется по описанным выше правилам отдельно для целой и дробной частей.

Примеры

1. Перевести в двоичную систему счисления число 72,4110

72,4110 = 7210 + 0,4110

72 2

— 72 36 2

7210=10010002 0

Перевод числа 0,4110 в двоичную систему счисления производится по описанному выше алгоритму перевода десятичной дроби в другую систему счисления. В результате перевода получено следующее число:

2. Перевести двоичное число в шестнадцатиричную систему счисления (путем разбиения на тетрады: для целой части справа налево, для дробной – слева направо)

Выполнение арифметических операций над числами

Арифметические операции над двоичными числами выполняются по тем же правилам, что и аналогичные операции над десятичными числами, а именно:

Двоичная Двоичная Двоичная

таблица сложения таблица вычитания таблица умножения

Пример

Выполнить сложение, вычитание, умножение и деление в двоичной системе счисления


+ 10011,110- 110001,1010

11001001 11011101101 1001

11001001 1001

1001

— 1001

Кодирование алфавитно-цифровой информации

В разное время и для разных моделей компьютеров были разработаны разные коды для кодирования числовой и текстовой информации.

Рассмотрим некоторые из них.

1. Двоично-десятичный код.Используется для кодирования числовой информации. Каждая цифра представляется 4-х разрядным двоичным числом (табл. 2).

Таблица 2

Пример

Представить десятичное число 92710 в двоично-десятичном коде

92710 = 100100100111 2-10 код .

2. Код ASCII (American Standard Code for Information Interchange).Используется для кодирования чисел и текстовой информации в современных персональных компьютерах. В ASCII символы с кодами от 0 до 127 используются для представления цифр, знаков арифметических операций, букв латинского алфавита, знаков пунктуации. Символы с кодами от 128 до 255 являются дополнительными и используются для букв национальных алфавитов и символов псевдографики. В странах СНГ наиболее широкое распространение получила русская альтернативная дополнительная таблица, которая приведена в [1].

Пример

Представить фамилию Иванов в коде ASCII (используя таблицу ASCII кодов, [1, стр. 14])

Источник

Оцените статью
( Пока оценок нет )
Поделиться с друзьями
Uchenik.top - научные работы и подготовка
0 0 голоса
Article Rating
Подписаться
Уведомить о
guest
0 Комментарий
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии