- •И. В. Потапов элементы прикладной теории цифровых автоматов
- •Оглавление
- •Введение
- •1. Представление чисел в эвм
- •1.1. Позиционные системы счисления
- •1.2. Обоснование применения в эвм двоичной системы счисления
- •1.3. Представление двоичных чисел с фиксированной и плавающей запятой
- •1.4. Прямой и инверсные коды чисел
- •1.5. Двоично-десятичные коды чисел
- •Вопросы для самоконтроля
- •2. Арифметические операции в двоичных кодах
- •2.1. Сложение двоичных кодов
- •2.2. Вычитание двоичных кодов
- •2.3. Выполнение операции округления чисел
- •2.3.1. Округление прямых кодов
- •2.3.2. Округление инверсных кодов
- •2.4. Умножение двоичных кодов
- •2.4.1. Умножение прямых кодов чисел
- •2.4.2. Ускоренное выполнение операции умножения
- •2.4.3. Умножение инверсных кодов чисел
- •2.5. Деление двоичных кодов
- •2.5.1. Деление прямых кодов чисел
- •2.5.2. Ускоренное выполнение операции деления
- •2.5.3. Деление дополнительных кодов чисел
- •2.6. Извлечение квадратного корня
- •2.7. Выполнение арифметических операций в d-кодах
- •2.7.1. Сложение в d-кодах
- •2.7.2. Умножение в d-кодах
- •2.7.3. Деление в d-кодах
- •Вопросы для самоконтроля
- •3. Переключательные функции
- •3.1. Основные определения и способы задания пф
- •3.2. Элементарные логические функции
- •3.3. Основные законы алгебры логики
- •3.4. Полные системы переключательных функций
- •3.5. Канонические формы аналитического представления пф
- •3.6. Кубическое представление пф
- •3.7. Синтез комбинационных схем
- •3.7.1. Синтез кс на логических элементах
- •3.7.2. Синтез кс на дешифраторах
- •3.7.3. Синтез кс на мультиплексорах
- •3.7.4. Синтез многовыходных схем
- •3.8. Риски сбоя в комбинационных схемах
- •Вопросы для самоконтроля
- •4. Минимизация переключательных функций
- •4.1. Минимизация пф с помощью карт Карно
- •4.2. Минимизация пф методом Квайна
- •4.3. Минимизация методом Квайна – Мак-Класки
- •4.4. Минимизация пф методом Блейка – Порецкого
- •4.5. Минимизация пф, заданных в конъюнктивной форме
- •4.6. Минимизация не полностью определенных пф
- •4.7. Минимизация систем пф
- •4.8. Минимизация пф в универсальных базисах и-не, или-не
- •Вопросы для самоконтроля
- •5. Моделирование работы и синтез автоматов с памятью
- •5.1. Основные модели, понятия и определения
- •5.1.1. Общее понятие цифрового автомата с памятью
- •5.1.2. Основные модели цифровых автоматов
- •5.1.3. Описание функционирования цифровых автоматов
- •5.1.4. Задание цифровых автоматов
- •5.1.5. Правила перехода между моделями Мили и Мура
- •5.2. Минимизация числа состояний цифровых автоматов
- •5.2.1. Минимизация числа состояний синхронного автомата методом Полла-Ангера
- •5.2.2. Минимизация числа состояний автомата Мура методом l-эквивалентных разбиений
- •5.2.3. Минимизация числа состояний автомата Мили методом l-эквивалентных разбиений
- •5.3. Структурный синтез цифровых автоматов
- •5.3.1. Типы элементарных автоматов, обладающие полной системой переходов-выходов
- •5.3.2. Основные этапы структурного синтеза
- •5.4. Рациональный выбор варианта кодирования состояний синхронных автоматов
- •Вопросы для самоконтроля
- •Библиографический список
- •Задания для выполнения самостоятельных работ
- •Илья Викторович потапов, канд. Техн. Наук, доцент элементы прикладной теории цифровых автоматов
1.5. Двоично-десятичные коды чисел
Исходя из вышеизложенного, можно заключить, что создание универсальных цифровых вычислительных устройств, функционирующих в наиболее удобной для человека десятичной системе представления чисел (квантование сигналов осуществляется по десяти уровням), не является рациональным, поскольку характеристики десятичных схем уступают по некоторым параметрам характеристикам двоичных схем. Поэтому в ряде случаев для синтеза десятичных вычислительных устройств используют двоично-десятичное представление чисел, т.е. кодирование десятичных цифр комбинациями двоичных.
Очевидно, что кодирование десятичных цифр комбинациями двоичных цифр может быть осуществлено различными способами. При этом должно выполняться условие единственности, т.е. в выбранной системе кодов каждому десятичному числу ставится в соответствие единственная комбинация двоичных цифр и наоборот. Для этого число разрядов двоичного кода должно удовлетворять условию , где квадратные скобки означают округление до большего целого, т.е. . Если учесть, что при переборе различных систем кодирования любой десятичной цифре можно поставить в соответствие любое из n-разрядных двоичных чисел, то число способов кодирования определяется как
,
т.е. как число размещений из по 10, поскольку эти соединения элементов отличаются друг от друга самими элементами или их порядком.
Из соображений минимизации наибольшее распространение получили двоично-десятичные коды, в которых десятичные цифры кодируются четырехразрядными двоичными комбинациями (двоичными тетрадами), т.е. . Отсюда число способов кодирования . Известны также и другие коды с числом разрядов .
Среди такого большого числа кодов наибольшее распространение вследствие своей эффективности и изученности получили коды, удовлетворяющие условию единственности и обладающие свойствами аддитивности, упорядоченности, четности, самодополняемости и взвешенности.
Свойство аддитивности заключается в том, что код суммы десятичных цифр может быть получен как сумма кодов слагаемых.
Упорядоченность двоично-десятичных кодов определяется выполнением одного из условий:
,
,
где – двоично-десятичный код i-й десятичной цифры.
Свойство четности заключается в том, что всем четным десятичным цифрам должны соответствовать только четные или только нечетные коды (аналогично для нечетных десятичных цифр).
Свойство самодополняемости кратко рассмотрено в разделе 1.1 и заключается в том, что сумма двоичного кода любой десятичной цифры и ее обратного двоично-десятичного кода должна быть равна двоично-десятичному коду цифры 9.
Свойством взвешенности обладают такие коды, в которых каждая десятичная цифра X может быть представлена полиномом вида
,
где – двоичные цифры кода; – некоторые веса, соответствующие разрядам двоичных кодовых комбинаций.
В табл. 1.3 представлены некоторые двоично-десятичные коды ( ) десятичных цифр.
Таблица 1.3
Десятичные цифры |
Коды |
||||
8421 |
8421+3 |
8421+6 |
2421 |
3321 |
|
0 |
0000 |
0011 |
0110 |
0000 |
0000 |
1 |
0001 |
0100 |
0111 |
0001 |
0111 |
2 |
0010 |
0101 |
1000 |
1000 0010 |
0010 |
3 |
0011 |
0110 |
1001 |
1001 0011 |
1000 0100 0011 |
4 |
0100 |
0111 |
1010 |
1010 0100 |
1001 0101 |
5 |
0101 |
1000 |
1011 |
0101 1011 |
1010 0110 |
6 |
0110 |
1001 |
1100 |
0110 1100 |
1100 1011 0111 |
7 |
0111 |
1010 |
1101 |
0111 1101 |
1101 |
8 |
1000 |
1011 |
1110 |
1110 |
1110 |
9 |
1001 |
1100 |
1111 |
1111 |
1111 |
Код 8421 по сути является простейшим D-кодом с естественным порядком весов, т.е. в двоичной тетраде старший разряд имеет наибольший вес – 8 ( ), а младший разряд – наименьший вес – 1 ( ). Этот код обладает свойствами аддитивности, упорядоченности, четности и взвешенности, однако, как указывалось выше, не обладает свойством самодополняемости. Для получения обратного кода необходимо увеличить значения, записанные в каждой тетраде числа на 6, т.е. преобразовать код 8421 в код 8421 с избытком 6 (8421+6), а затем инвертировать двоичные разряды.
Код 8421 с потетрадным избытком 3 (8421+3) обладает свойством самодополняемости, поэтому для получения обратного кода отрицательного числа достаточно просто инвертировать двоичные разряды в тетрадах.
Коды 2421 и 3321 являются кодами с искусственным порядком весов. В таких кодах некоторые десятичные цифры могут быть представлены несколькими кодовыми комбинациями. Для выполнения условия единственности некоторые разрешенные кодовые комбинации считают запрещенными.
Подробнее об арифметике двоично-десятичных кодов см. в разде- ле 2.7.