Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Системы счисления, используемые в МПТ



В микропроцессорной технике применяются следующие системы счисления.

Десятичная. Привычная “школьная” система с основанием q=10, в которой используется десять цифр ar Î{0,1,2,…,9}. В этой системе могут представляться исходные данные, решаются контрольные примеры и выводятся на различные носители и средства визуального отображения полученные результаты.

Двоичная. Основание такой системы q=2. Используется две цифры ar Î{0,1}.

В двоичной системе счисления смешанное число X2 выражается в следующем виде.

Целая часть числа представляется двоичным полином вида

X 2 = (a n-1 *10 n-1 +…+a 2 *1010 +a 1 *1001+a 0 )2 (1.4)

Дробная часть имеет вид

X 2 =(a-1*10-001+a-2*10-010+…+a-m*10−m)2, (1.5)

где ar Î{0,1} - используемые на r – ой позиции двоичные цифры

n, m − длины соответственно целой и дробной части числа, выраженные двоичными числами

Такая система естественно отражает состояния элементов дискретных ключевых схем, являющихся базой микропроцессорной схемотехники, поэтому на этой системе основываются аналитические бинарные модели дискретных устройств. Двоичная система также применяется для непосредственного ввода данных в МПТ, вывода полученных результатов. Однако, из Свойства 7 следует недостаток двоичной системы: для представления чисел в систе­ме с основанием 2необходимо больше разрядов, чем, в других систем с непосредственным представлением чисел.

Шестнадцатеричная. Известная система с основанием q=16, в которой используется шестнадцать цифр ar Î{0,1,2,…,9, A,B,C,D,E,F}. В качестве цифр, превышающих по значению 9, используются прописные буквы латинского алфавита.

В шестнадцатеричной системе счисления смешанное число X16 вы­ражается в следующем виде.

Целая часть числа полином вида

X16 = (a n-1 *10 n-1 +…+a A *10A +… +a 0 ) 16 (1.6)

Дробная часть представляется как

X16 =(a-1*10-1+…+a-A*10-A+…+a-m*10m)16,(1.7)

где

ar Î{0,1,2,…,9, A,B,C,D,E,F} – используемые шестнадцатеричные цифры

n, m − длины соответственно целой и дробной части числа, выраженные шестнадцатеричными числами

Шестнадцатеричная система в силу компактности записи числа удобна для задания данных и символического отображения внутренних состояний функциональных частей МПТ. Она обеспечивает компактный вывод данных и результатов на средства визуального отображения – электролюминисцентные индикаторы, в поля ввода–вывода экранных форм и т.п.

Это преимущество шестнадцатеричных систем счисления иллюстрируется Рисунком 1, на котором приведены символические экраны для вывода десятичного числа X =60658 в шестнадцатеричной СС (X=ECF2h) и двоичной системе счисления X= 1110110011110010B.


Восьмеричная. Система с основанием q=8, в которой используется восемь цифр ar Î{0,1,2,…6,7}.

В восьмеричной системе счисления смешанное число X8 выражается в следующем виде.

Целая часть числа представляется как полином вида

X 8 = (a n-1 *10 n-1 +…+a 7 *1007 +… +a 0 ) 8 (1.8)

Дробная часть имеет вид

X 8 =(a-1*10-1+…+a-7*10-07+…+a-m*10m)8,(1.9)

где ar Î{0,1,2,…,7} – используемые восьмеричные цифры

n, m − длины соответственно целой и дробной части числа, выраженные восьмеричными числами

Двоично-десятичная система счисления ( BCD (B inary C oded D ecimal)). Относится к двоично–кодируемым позиционным системам.

Основанием системы является десятичное число 10, а для кодирования десятичных цифр используется десять двоичных четырехразрядных комбинаций (тетрад). Каждая комбинация однозначно соответствует десятичной цифре в десятичном числе.

Известно, что число двоичных четырехразрядных комбинаций превышает число цифр десятичной системы счисления. Действительно – 24> 10.

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

 
 

Нетрудно показать, что число различных вариантов кодирования определяется как число размещений с перестановками из шестнадцати элементов на десяти местах. Такое число A(M,N) может быт подсчитано как

Подсчеты показывают, что число кодов около 6 млн.(!). Актуальность решения задачи выбора кода усугубляются тем, что тип отображения цифра → тетрада порождает код с уникальными свойствами. Пригодность и эффективность конкретного кода для машинных расчетов – различна.

Поэтому при выборе кода желательно, чтобы были учтены некоторые ограничения.

Известны пять основных требований (критериев), которые сформулированы Рутисхаузером.

  1. Единственность. Необходимо однозначное соответствие цифр и тетрад. Если это требование не выполнено, то невозможно кодирование и декодирование чисел.

2. Упорядоченность. Большим десятичным цифрам должны соответствовать большие (по количественному эквиваленту) тетрады.

Выполнение этого требования необходимо при сравнении кодированных чисел.

3. Четность. Четным десятичным цифрам должны соответствовать четные тетрады (тетрады, у которых в крайнем правой разряде стоит нуль), а нечетным цифрам — нечетные тетрады.

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

5. Весомозначность. Должны существовать четыре веса р0, р1, р2, р3 таких, что если десятичной цифре х сопоставлена тетрада (a3 a2 a1a0), то имеет место равенство

х= a33 + a2* р2+a11 + a00

К весомозначности приводит, например, следующий способ кодирования: каждая десятичная цифра кодируется ее записью в двоичной системе с использованием полинома вида (1.4).

В этом случае цифра 5 будет закодирована тетрадой 0101, цифра 6 –тетрадой 0110 и т.д. Такой способ кодирования называется кодом прямого замещения с весами (8, 4, 2, 1).

Кодирование, удовлетворяющее всем пяти требованиям, называется совершенным.

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

Для выполнения свойства дополнительности можно кодировать десятичную цифру х тетрадой Т(х), равной х + 3. Полученный код называется кодом с избытком 3, или кодом Штибитца.

Однако, кодирование с избытком 3, как и код прямого замещения, не является совершенным т.к.не обладает свойством весомозначности

Коротко останавливаясь на свойствах возможных вариантов кодирования целесообразно выполнить следующий анализ.

Для кодирования единицы необходимо, чтобы один из весов был равен 1. Если считать, что р0 = 1, то необходимо чтобы р3 + р2+ р1 = 8. Возможны следующие комбинации весов 3 , р2, р1) с точностью до их переста­новки:

(6,1,1), (5,2,1), (4,2,2), (3,2,3), (4,1,3).

Соответсвующие варианты кодирования (комбинации весов) сведены в таблицу.

Таблица 2 – Варианты двоично–десятичного кодирования

Кодируемая десятичная цифра x Значение тетрады Т(х)в системе счисления
(8,4,2,1) (6,1,1,1) (5,2,1,1) (3,3,2,1) (4,3,1,1) (2,4,2,1) х + 3
               
               
               
               
             
             
               
               
               
               

Данные таблицы позволяют сделать следующие выводы.

В системе с весами (8,4,2, 1) отсутствует свойство дополнительности.

Для случая (6,1, 1,1) нарушается первое требование Рутисхаузера: для цифр 4 и 5, т.е. отсутствуют соответствующие тетрады.

В системе с весами (5, 2, 1, 1) не выполняется требование четности для цифр 4 и 5.

В системе с весами (3, 3, 2, 1) не выполняется требование четности для цифр 4 и 5.

В системе с весами (4, 3, 1, 1) не выполняется требование четности для цифр 2, 3, 6, 7.

Кодирование с избытком 3, как и код прямого замещения, не является совершенным т.к. не обладает свойством весомозначности

В системе с весами (2, 4, 2, 1) все пять требований выполнены, соответствующая арифметика является совершенной и называется в честь авторов — арифметикой Айкена—Эмери.

Двоично–десятичные системы эффективны при решении задач обработки больших массивов десятичных чисел. Например, при обработке массивов десятичных параметров (экономические задачи). В этом случае, за счет упрощения процедур перевода десятичных чисел в BCD–систему и обратно, может быть достигнуто повышение производительности вычислительного средства.

В таблице 3 приведены в качестве примера некоторые числа. представленные в рассмотренных системах.

Таблица 3 – Примеры кодирования чисел в машинных системах счисления





Дата публикования: 2015-04-10; Прочитано: 519 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.009 с)...