Суммирование чисел с одинаковыми знаками в bcd-коде
При выполнении операций над отмеченными кодами возможны следующие особенности:
-
наличие разрешенных и запрещенных комбинаций, свидетельствующих о правильности результата или необходимости его коррекции;
-
при сложении тетрад возможен потетрадный (16 единиц), а не поразрядный (10 единиц) перенос, что также требует корректировки результата.
При сложении чисел в BCD-коде возможны три случая:
1) ( a + b ) ≤ 9 . В этом случае если действия выполняются по правилам двоичной арифметики, то величина получаемой суммы не превышает девяти и коррекция результата не требуется.
5 0101
+ 3 0011
8 1000
2) 10 ≤ ( a + b ) ≤ 15. Если результат сложения двух чисел попадает в данный диапазон чисел, то возможны два случая результирующей тетрады.
5 0101 9 1001
+ 6 0110 + 4 0100
11 1011 13 1101
В этом случае в тетраде накопилось более девяти единиц и должен быть выполнен десятичный перенос. Перенос единицы в старший разряд выполняется принудительно логической схемой. Условием для формирования единицы переноса является возникновение запрещенной комбинации (наличие единицы в разрядах с весом 8 и 4 или 8 и 2). Однако тетраду надо освободить от десяти избыточных единиц. Это тоже делается принудительно добавлением 0110 (шестерки), что приводит к возникновению шестнадцатеричного переноса. Этот перенос игнорируется. Схема формирования принудительного переноса приведена на рис.11.
3) ( a + b ) ≥ 16. Здесь в процессе суммирования возникает шестнадцатеричный перенос, в результате которого тетраду покидают вместе с десятком и те шесть единиц, которые принадлежат тетраде. Чтобы восстановить верное значение этой тетрады, необходимо к ней добавить 0110 (шесть).
x x x x и и или Перенос
+ 9 1001
17 1 0001
0110 Коррекция(+6) 0111
Рис. 11. Схема определения запрещенной комбинации
Таким образом, из сказанного выше можно сформулировать следующие правила потетрадного сложения чисел в BCD-кодах.
-
Если при потетрадном сложении перенос в соседнюю старшую тетраду не возникает, то результат суммирования не требует коррекции.
-
Коррекция результата потетрадного сложения путем добавления поправки 0110 требуется в случае, если возникает:
а) потетрадный перенос в старшую тетраду;
б) запрещенная комбинация.
Устройство, которое работает по сформулированным выше правилам, называется одноразрядным двоично-десятичным сумматором (рис.12).
Пример: сложить числа А=169 и В=378 в BCD-коде
A = 169 A = 0.0001 0110 1001
+ B = 378 + B = 0.0011 0111 1000
A + B = 547 A + B = 0.0101 1110 0001
0110 0110
0.0101 0100 0111
перенос игнорируется
Yandex.RTB R-A-252273-3
- Арифметические и логические основы вычислительной техники учебное пособие
- Введение
- Арифметические основы вычислительной техники Системы счисления
- Двоичная система счисления
- Восьмеричная система счисления
- Шестнадцатеричная система счисления
- Критерии выбора системы счисления
- Перевод чисел из одной системы счисления в другую
- Перевод целых чисел
- Перевод правильных дробей
- Перевод чисел из одной системы счисления в другую, основание которой кратно степени 2
- Кодирование чисел
- Переполнение разрядной сетки
- Модифицированные коды
- Машинные формы представления чисел
- Погрешность выполнения арифметических операций
- Округление
- Нормализация чисел
- Последовательное и параллельное сложение чисел
- Сложение чисел с плавающей запятой
- Машинные методы умножения чисел в прямых кодах
- Ускорение операции умножения
- Умножение с хранением переносов
- Умножение на два разряда множителя одновременно
- Умножение на четыре разряда одновременно
- Умножение в дополнительных кодах
- Умножение на два разряда множителя в дополнительных кодах
- Матричные методы умножения
- Машинные методы деления
- Деление чисел в прямых кодах
- Деление чисел в дополнительных кодах
- Методы ускорения деления
- Двоично-десятичные коды
- Суммирование чисел с одинаковыми знаками в bcd-коде
- Суммирование чисел с разными знаками в bcd-коде
- Система счисления в остаточных классах (сок)
- Представление отрицательных чисел в сок
- Контроль работы цифрового автомата
- Некоторые понятия теории кодирования
- Обнаружение и исправление одиночных ошибок путем использования дополнительных разрядов
- Коды Хемминга
- Логические основы вычислительной техники Двоичные переменные и булевы функции
- Способы задания булевых функций
- Основные понятия алгебры логики
- Основные законы алгебры логики
- Формы представления функций алгебры логики
- Системы функций алгебры логики
- Минимизация фал
- Метод Квайна
- Метод Блейка - Порецкого
- Метод минимизирующих карт Карно (Вейча)
- Б в Рис. 19. Таблица истинности и карта Карно
- Минимизация конъюнктивных нормальных форм
- Минимизация не полностью определенных фал
- Кубическое задание функций алгебры логики
- Метод Квайна −Мак-Класки
- Алгоритм извлечения (Рота)
- Нахождение множества простых импликант
- Определение l-экстремалей
- Минимизация фал методом преобразования логических выражений
- Применение правил и законов алгебры логики к синтезу некоторых цифровых устройств Синтез одноразрядного полного комбинационного сумматора
- Синтез одноразрядного комбинационного полусумматора
- Синтез одноразрядного полного комбинационного сумматора на двух полусумматорах
- Синтез одноразрядного комбинационного вычитателя
- Объединенная схема одноразрядного комбинационного сумматора-вычитателя
- Триггер со счетным входом как полный одноразрядный сумматор
- Введение в теорию конечных автоматов Основные понятия теории автоматов
- Способы задания автоматов
- Структурный автомат
- Память автомата
- Канонический метод структурного синтеза автоматов
- Принцип микропрограммного управления
- Граф-схема алгоритма
- Пример синтеза мпа по гса
- Синтез мпа Мили по гса
- Синхронизация автоматов
- Литература
- 220013, Минск, п.Бровки, 6