Студопедия
Обратная связь


Авиадвигателестроения Административное право Административное право Беларусии Алгебра Архитектура Безопасность жизнедеятельности Введение в профессию «психолог» Введение в экономику культуры Высшая математика Геология Геоморфология Гидрология и гидрометрии Гидросистемы и гидромашины История Украины Культурология Культурология Логика Маркетинг Машиностроение Медицинская психология Менеджмент Металлы и сварка Методы и средства измерений электрических величин Мировая экономика Начертательная геометрия Основы экономической теории Охрана труда Пожарная тактика Процессы и структуры мышления Профессиональная психология Психология Психология менеджмента Современные фундаментальные и прикладные исследования в приборостроении Социальная психология Социально-философская проблематика Социология Статистика Теоретические основы информатики Теория автоматического регулирования Теория вероятности Транспортное право Туроператор Уголовное право Уголовный процесс Управление современным производством Физика Физические явления Философия Холодильные установки Экология Экономика История экономики Основы экономики Экономика предприятия Экономическая история Экономическая теория Экономический анализ Развитие экономики ЕС Чрезвычайные ситуации ВКонтакте Одноклассники Мой Мир Фейсбук LiveJournal Instagram


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

Вещественное число, в общем случае содержащее целую и дробную часть, всегда можно представить в виде суммы целого числа и правильной дроби. Поскольку в предыдущем параграфе проблема записи натуральных чисел в различных системах счисления уже была решена, можно ограничить рассмотрение только алгоритмами перевода правильных дробей. Введем следующие обозначения: правильную дробь в исходной системе счисления р будем записывать в виде 0, Yр, дробь в системе q - 0, Yq, а преобразование - в виде 0, Yp → 0, Yq. Последовательность рассуждений весьма напоминает проведенную ранее для натуральных чисел. В частности, это касается рекомендации осуществлять преобразование через промежуточный переход к 10-ной системе, чтобы избежать необходимости производить вычисления в «непривычных» системах счисления, т.е. 0, Yp0,Y10 0,Yq. Это, в свою очередь, разбивает задачу на две составляющие: преобразование 0, Yр → 0, Y10 и 0, Y10 → 0, Yq, каждое из которых может рассматриваться независимо.

Алгоритмы перевода 0,Y10 → 0,Yq выводится путем следующих рассуждений. Если основание системы счисления q, простая дробь содержит n цифр и bk - цифры дроби (1 ≤ k ≤ п, 0 ≤ bk ≤ q -1), то она может быть представлена в виде суммы:

Часть дроби от разряда i до ее конца обозначим εi и примем εn = bn/q (очевидно, ε1 = О, Yq); тогда в (4.5) легко усматривается рекуррентное соотношение:

Если вновь позаимствовать в PASCAL'e обозначение функции - на этот раз trunc, производящая округление целого вещественного числа путем отбрасывания его дробной части, то следствием (4.6) будут соотношения, позволяющие находить цифры новой дроби:

Соотношения (4.7) задают алгоритм преобразования 0, Y10 → 0, Yq:

1) умножить исходную дробь в 10-ной системе счисления на q, выделить целую часть - она будет первой цифрой новой дроби; отбросить целую часть;

2) для оставшейся дробной части операцию умножения с выделением целой и дробных частей повторять, пока в дробной части не окажется 0 или не будет достигнута желаемая точность конечного числа (exact); появляющиеся при этом целые будут цифрами новой дроби;

3) записать дробь в виде последовательности цифр после ноля с разделителем в порядке их появления в п. (1) и (2).

Блок-схема алгоритма представлена на рис.4.2. Цикл перевода заканчивается либо в том случае, когда окажется εi+1 = 0, либо последовательность действий повторится наперед заданное число раз (значение константы ех), которое совпадает с количеством значащих цифр в дробной части.





 

Читайте также:

Свойства энтропии

Пример 2.1

Общая идея моделирования

Характеристики канала связи

Пример А.3

Вернуться в оглавление: Теоретические основы информатики

Просмотров: 1469

 
 

© studopedia.ru Не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования. Есть нарушение авторского права? Напишите нам. Ваш ip: 54.162.168.187