Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Sistemy_schislenia_konspekt_lektsy_po_kursu_Inf...doc
Скачиваний:
4
Добавлен:
25.09.2019
Размер:
69.12 Кб
Скачать

Смешанные системы счисления

В ряде случаев числа, записанные в системе счисления с основанием P, приходится изображать с помощью цифр другой системы счисления с основанием Q, где Q < P. Такая ситуация возникает, например, когда в ЭВМ, которая воспринимает только двоичные числа, необходимо изобразить десятичные числа. В этих случаях используются смешанные системы счисления, в которых каждый коэффициент P-ичного разложения числа записывается в Q-ичной системе. В такой системе P называется старшим основанием, а Q – младшим основанием системы, а сама смешанная система называется (P – Q)-ичной. Для того чтобы запись числа в смешанной системе счисления была однозначной, для представления любой P-ичной цифры отводится одно и то же количество Q-ичных разрядов, достаточное для представления любого базисного числа P-ичной системы. Так, в смешанной двоично-десятичной системе счисления для изображения каждой десятичной цифры отводится четыре двоичных разряда. Например, десятичное число х = 925 в двоично-десятичной системе запишется в виде 1001 0010 0101.

Будем изображать принадлежность числа к (P – Q)-ичной системе счисления с помощью нижнего индекса: 92510 = 1001 0010 01012-10 .

Аналогично двоично-десятичной системе можно использовать и другие смешанные системы при различных значениях P и Q. Отметим ситуацию, когда P = Qn, где n – целое положительное число. В этом случае запись какого-либо числа в смешанной системе счисления тождественно совпадает с изображением этого числа в системе с основанием Q (что не имеет места в двоично-десятичной системе в общем случае).

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

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

Ограничимся рассмотрением систем счисления, у которых базисными числами являются последовательные числа 0, 1, …Р–1, где Р – основание системы. Задача перевода заключается в следующем.

Пусть известна запись числа х в системе счисления с основанием Р:

рn рn-1… р1 р0 р-1 р-2...,

где рi – цифры P=ичной системы. Требуется найти запись этого же числа в системе с основанием Q:

qn qn-1… q1 q0 q-1 q-2...,

где qi – цифры P-ичной системы.

Перевод QP. Задача сводится к вычислению полинома вида

Х=qnQn + qn-1Qn-1 +…+q1Q1 + q0Q0 + q-1Q-1 +…+ q -mQ-m. (2.4)

Для получения P-ичного изображения (2.4) необходимо все цифры qi и число Q заменить P-ичными изображениями и выполнить арифметические операции в P-ичной системе счисления.

Пример. Перевести х = 3718 в десятичную систему счисления.

Запишем число 3718 в виде х = 3 ∙ 82 + 7 ∙ 81 + 1 ∙ 80 и выполним все необходимые действия в десятичной системе:

х=3 ∙ 64 + 7 ∙ 8 + 1 = 192 + 56 + 1 = 249.

Перевод PQ. Рассмотрим случай перевода целых чисел. Пусть известна запись целого числа N в системе счисления с основанием P и требуется перевести это число в систему с основанием Q. Поскольку N – целое, то его запись в Q-ичной системе счисления имеет вид

N = qs qs-1q1 q0,

где qi – искомые цифры Q-ичной системы. Для определения q0 разделим обе части равенства

N = qsQs + qs-1Qs-1 +…+q1Q1 + q0 (2.5)

на число Q, причем в левой части произведем деление, пользуясь правилами P-ичной арифметики, а правую часть перепишем в виде

N/Q = qsQs-1 + q-1Qs-2 + …+ q1 + q0/Q.

Приравнивая между собой полученные целые и дробные части (учитывая, что qi < Q), получим:

[N/Q] = qsQs-1 + q-1Qs-2 + …+ q1,

[N/Q] = q0/Q.

Таким образом, младший коэффициент q0 в разложении (2.5) определяется соотношением

q0=Q[N/Q].

Положим

N1 =[N/Q]=qsQs-1 + q-1Qs-2 +…+q1.

Тогда N1 будет целым числом и к нему можно применить ту же самую процедуру для определения следующего коэффциента q1 и т.д.

Таким образом, при условии, что N0 = N, перевод чисел с использованием Р-ичной арифметики осуществляется по следующим реккурентным формулам:

qi = Q[Ni / Q], (2.6)

Ni+1 = [Ni / Q], ( i = 0, 1, 2, …).

Этот процесс продолжается до тех пор, пока не будет получено Ni+1 = 0.

Пример. Привести число N=47 в двоичную систему. Применяя формулы (2.6) при Q=2, имеем:

47:2=23(1); 23:2=11(1); 11:2=5(1); 5:2=2(1); 2:2=1(0); 1:2=0(1).

Поскольку числа нуль и единица в обеих системах счисления обозначаются одинаковыми цифрами 0 и 1, то в процессе деления сразу получим двоичные изображения искомых цифр: N=1011112.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]