Для преобразования представления любого числа из одной ПСС в другую достаточно уметь преобразовывать отдельно его целую и отдельно дробную части, а затем соединить преобразованные части. Рассмотрим отдельно эти два случая.
ПРОБРАЗОВАНИЕ ЦЕЛЫХ ЧИСЕЛ
Известна запись целого числа N в 10-ой ПСС. Согласно (4) запись этого числа в Q - ичной ПСС будет иметь вид:
(10)
где . Для определения q0 разделим обе части равенства (10) нацело на Q, причём в левой части произведём деление, пользуясь правилами 10-ной арифметики, и получим:
, (11)
. (12)
В (11) скобками указано взятие целой части числа, так как мы выполняем операция целочисленного деления. В (12) - записана операция получения остатка от деления N нацело на Q. В формуле (11) q0 исчезло, так как все qi < Q. Теперь, для определения q1, к N1 можно применить те же операции:
.
Таким образом, пологая , перевод чисел с использованием 10-ной арифметики осуществляется по следующим рекуррентным формулам:
. (13)
Этот процесс продолжается до тех пор, пока не будет получено . Учитывая, что поскольку все операции выполняются в 10-ной ПСС, то в этой же ПСС будут получены искомые коэффициенты , поэтому каждый из них необходимо записать одной цифрой в новой Q -ичной.
|
|
Замечание. Рекуррентная формула – это соотношение вида:
an+1= f(n, an), n=0, 1, 2, …,
которое позволяет вычислить все члены последовательности a1 , a2, … ,, если задано a0 и вид функционального отображения f(∙).
Таким образом, для вычисления представления числа в новой ПСС необходимо:
1. Выполнить деление нацело текущего частного Ni на основание новой ПСС ( все числа представляются в 10-ой ПСС и операция выполняется по правилам 10-ой ПСС).
2. Вычислить текущий остаток от деления нацело ( qi = Ni modQ ) по правилам 10-ой ПСС.
3. Если новое частное Ni+1 не равно 0, то перейти к пункту 1.
4. Каждый остаток, записанный в 10-ой ПСС, записываем одной цифрой в новой ПСС.
5. Остатки записываем в обратном порядке, они дадут изображение числа в новой ПСС (последний остаток будет самой левой цифрой, а первый остаток – самой правой цифрой).
Пример 1. Перевести число N = 47 в двоичную ПСС. Применяя формулы (13), имеем:
47 | 1
23 | 1
11 | 1
5 | 1
2 | 0
1 | 1
0 |
Здесь слева от вертикальной черты пишем исходное число и частные, а справа указывается остаток от деления нацело на 2. Поскольку числа 0 и 1 в обеих ПСС (десятичной и двоичной) обозначаются одинаковыми цифрами, то переводить остатки в двоичную ПСС не требуется. Следовательно, записывая остатки в обратном порядке, имеем результат .