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

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

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






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

Введем следующие обозначения: правильную дробь в исходной системе счисления p будем записывать в виде 0, Yp, дробь в системе q — 0, Yq, а преобразование — в виде 0, Yp0, Yq.

Последовательность рассуждений весьма напоминает проведенную ранее для натуральных чисел. В частности, это касается рекомендации осуществлять преобразование через промежуточный переход к десятичной системе, чтобы избежать необходимости производить вычисления в "непривычных" системах счисления, т. е. 0, Yp → 0, Y 10 →0, Yq.

Это, в свою очередь, разбивает задачу на две составляющие: преобразование 0, Yp → 0, Y 10 и 0, Y 10 →0, Yq, каждое из которых может рассматриваться независимо.

(Страница41)

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

(3.5)

Часть дроби от разряда i до ее конца обозначим и примем Очевидно, , тогда в (3.5) легко усматривается рекуррентное соотношение:

(3.6)

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

(3.7)

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

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

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

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

Пример 3.3

Выполнить преобразование 0, 37510 → 0, Y2 • Результат — на рис. 3.2.,

Таким образом, 0, 37510 → 0, 0112

Рис. 3.2. Результат выполнения примера 3.3

Перевод 0, Yp → 0, Y 10, как и в случае натуральных чисел, сводится к вычислению значения формы (3.5) в десятичной системе счисления. Например:

0, 0112=0*2 - 1+1*2 - 2+1*2 - 3=0+0, 25+0, 125=0, 37510.

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

Пример 3.4

Выполнить преобразование 5, 3(3)10Y 8.

Перевод целой части, очевидно, дает: 510=123. Перевод дробной части: 0, 3(3)10 → 0, 1. Окончательно: 5, 3(3)10 → 12, 13.

Как уже было сказано, значение целого числа не зависит от формы его представления и выражает количество входящих в него единиц. Простая дробь имеет смысл доли единицы, и это "дольное" содержание также не зависит от выбора способа представления. Другими словами, треть пирога остается третью в любой системе счисления.

3.2.3. Перевод чисел между системами счисления 2 ↔ 8 ↔ 16

Интерес к двоичной системе счисления вызван тем, что именно она используется для представления чисел в компьютере. Однако двоичная запись оказывается громоздкой, поскольку содержит много цифр и, кроме того, плохо воспринимается и запоминается человеком из-за зрительной однородности (все число состоит из нулей и единиц). Поэтому в нумерации ячеек памяти компьютера, записи кодов команд, нумерации регистров и устройств и пр. используются системы счисления с основаниями 8 и 16. Выбор именно этих систем счисления обусловлен тем, что переход от них к двоичной системе и обратно осуществляется, как будет показано далее, весьма простым образом. Двоичная система счисления имеет основанием 2 и, соответственно, две цифры: 0 и 1.

Восьмеричная система счисления имеет основание 8 и цифры 0, 1,..., 7, Шестнадцатеричная система счисления имеет основание 16 и цифры 0, 1,..., 9, А, В, С. D, E, F. При этом знак A является шестнадцатеричной цифрой, соответствующей числу 10 в десятичной системе, В16=1110, С16=1210, D16=1310, Е16=1410 и. F16=1510. Другими словами, в данном случае A,..., F — это не буквы латинского алфавита, а цифры шестнадцатеричной системы счисления.

Докажем две теоремы [12].

Теорема 1. Для преобразования целого числа ZpZq в том случае, если системы счисления связаны соотношением q=pr, где r— целое число, большее 1, достаточно Zp разбить справа налево на группы по rцифр и каждую из них независимо перевести в систему q.

Доказательство. Пусть максимальный показатель степени в записи числа p по форме (3.1) равен k- 1, причем, 2r> k- 1>r.

Вынесем множитель pr из всех слагаемых, у которых j≥;r. Получим:

где

Таким образом, r-разрядные числа системы с основанием p оказываются записанными как цифры системы с основанием q. Этот результат можно обобщить на ситуацию произвольного k- 1>r— в этом случае выделятся не две, а больше (m) цифр числа с основанием q. Очевидно, Zq =(bm...b0) q.

Теорема 2. Для преобразования целого числа Zp→Zq в том случае,

если системы счисления связаны соотношением p=qr, где r— целое число, большее 1, достаточно каждую цифру Zp заменить соответствующим r - разрядным числом в системе счисления q, дополняя его при необходимости незначащими нулями слева до группы в rцифр. Доказательство. Пусть исходное число содержит две цифры, т. е.

Для каждой цифры справедливо: 0<a i <p-1 и поскольку p=qr,

0≤ ai≤qr -1, то в представлении этих цифр в системе счисления q максимальная степень многочленов (3.1) будет не более r -1 и эти многочлены будут содержать по r цифр:

Тогда

причем число Zq содержит 2r цифр. Доказательство легко обобщается на случай произвольного количества цифр в числе Zp.







Дата добавления: 2015-04-16; просмотров: 2308. Нарушение авторских прав; Мы поможем в написании вашей работы!



Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...

Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...

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

Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...

Шрифт зодчего Шрифт зодчего состоит из прописных (заглавных), строчных букв и цифр...

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

РЕВМАТИЧЕСКИЕ БОЛЕЗНИ Ревматические болезни(или диффузные болезни соединительно ткани(ДБСТ))— это группа заболеваний, характеризующихся первичным системным поражением соединительной ткани в связи с нарушением иммунного гомеостаза...

Седалищно-прямокишечная ямка Седалищно-прямокишечная (анальная) ямка, fossa ischiorectalis (ischioanalis) – это парное углубление в области промежности, находящееся по бокам от конечного отдела прямой кишки и седалищных бугров, заполненное жировой клетчаткой, сосудами, нервами и...

Основные структурные физиотерапевтические подразделения Физиотерапевтическое подразделение является одним из структурных подразделений лечебно-профилактического учреждения, которое предназначено для оказания физиотерапевтической помощи...

Почему важны муниципальные выборы? Туристическая фирма оставляет за собой право, в случае причин непреодолимого характера, вносить некоторые изменения в программу тура без уменьшения общего объема и качества услуг, в том числе предоставлять замену отеля на равнозначный...

Studopedia.info - Студопедия - 2014-2024 год . (0.008 сек.) русская версия | украинская версия