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

Поскольку одно и тоже число может быть записано в различных системах счисления, встает вопрос о переводе представления числа из одной системы (p) в другую (q). Будем обозначать такое представление Ap®Aq. Теоретически можно произвести перевод для любых p и q. Однако подобный прямой перевод будет затруднен тем, что придется выполнять операции по правилам арифметики не десятичных систем счисления. По этой причине более удобным можно считать вариант преобразования с промежуточным переводом Ap®Ar®Aq с основанием r, для которого арифметические операции выполнить легко. Такими удобными основаниями являются r=1 и r=10, т.е. перевод осуществляется через унарную или десятичную систему счисления.

Преобразование Ap®A1®Aq

Идея алгоритма перевода следующая: положим начальное значение Aq=0. Из числа ap вычтем единицу по правилам вычитания системы p и добавим ее к Aq по правилам сложения системы q; будем выполнять эту последовательность действий пока не достигнем Aр=0.

Пример 3.

Выполнить преобразование 223®А6.

Решение.

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

Шаг                  
А3 – 1                  
А6 + 1                  

Следовательно, 223®126.

Преобразование Ap®A10®Aq

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

Преобразование A10®Aq

Поскольку А10 целое десятичное число в его разложении отсутствуют коэффициенты с отрицательными индексами и его можно представить в виде.

A10 = a n-1×qn-1+ a n-2× qn-2+ … + a 2×q2+ a 1×q1+ a 0 q0.

Разделим число А10 на q. Частное будет равно

a n-1×qn-2+… + a2 ×q+ a 1,

а остаток будет равен a 0.

Полученное неполное частное опять разделим на q, остаток от деления будет равен а 1.

Если продолжить этот процесс деления, то на n-м шаге получим набор цифр

a 0, a 1, a 2,…, a n-1,которые входят в q-ичное представление числа А10 и совпадают с остатками при последовательном делении данного числа на q. Но мы их получили в порядке, обратном порядку расположения в q-ичном представлении числа А.

А10=(a n-1 a n-2a 1 a 0)q.

Пример 4.

Перевести 1410®А3.

Решение.

Рассмотренную выше последовательность действий удобнее изображать следующим образом:

14 3

12 4 3

2 3 1

1

а 0 а 1 а 2

Записывая остатки от деления в обратном направлении получим число 1123.

1410= 1123.

Преобразование Аp®А10

Данное преобразование явно вытекает из формулы (1): если все слагаемые в развернутой форме не десятичного числа представить в десятичной системе и вычислить полученное выражение по правилам десятичной арифметики, то получится число в десятичной системе равной данному (это правило распространяется как на целые, так и на дробные числа).

Пример 5.

Перевести 1123 ®А10, 1001012 = ® А10, 14FC16 ® А10, 101,012 ® А10

Решение.

1123 = 1*102+1*101+2*100 = 1*32+1*31+2*30=1410

1001012 = 1*10101+0*10100+0*1011+1*1010+0*101+1*100=1*25+0*24+0*23+1*22+0*21+1*20=3710

14FC16 = 1*103+4*102+F*101+C*100=1*163+4*162+15*161+12*160=537210

101,012 = 1*1010+0*101+1*100+0*10-1 +1*10-10=1*22+0*21+1*20+0*2-1 +1*2-2=5,2510


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: