- •1.Представление чисел в позиционных сс.
- •2. Перевод чисел из одной системы в другую.
- •3. Представление в разрядных сетках целых и дробных чисел в форме с фиксированной точкой.
- •4.Представление в разрядных сетках чисел в форме с плавающей точкой.
- •5.Предчтавление в разрядных сетках чисел в форме с плавающей точкой со смещенным порядком.
- •6.Упакованный и распакованный формат представления в разрядных сетках десятичных чисел.
- •7.Прямой, обратный и дополнительный коды представления двоичных чисел.
- •8.Логический, циклический и арифметический сдвиги над двоичными кодами чисел.
- •9. Алгебраическое сложение чисел в форме с фиксированной точкой.
- •10. Алгебраическое сложение десятичных чисел, представленных в коде 8-4-2-1.
- •11. Алгебраическое сложение чисел в форме с плавающей точкой.
- •12. Алгоритм Бута для умножения чисел в форме с фикс. Точкой.
- •13.Деление чисел в форме с фикс. Точкой методом «с неподвижным делителем без восстановления остатка».
- •14.Умножение и деление чисел в форме с плавающей точкой.
- •15.Булевый базис логических функций.
- •17.Логическая функция – «сумма по модулю 2».
- •18.Построенние сндф логических функций по таблице истинности. 19.Построение лог. Схемы, реализирующей сндф лог. Функции.
- •20.Формула д.Моргана и переход к инвертируемым базисам.
- •21.Минимизация логической функции методом Квайна-Маккласки
- •22. Минимизация с использованием инверсных функций
- •23. Шифраторы
- •Логические выражения отражающие функционирование:
- •24.Дешифраторы.
- •25.Каскадное соединение дешифраторов.
- •26. Мультиплексоры
- •27. Компараторы и инкременторы.
- •28. Одноразрядные сумматоры.
- •31.Асинхронные rs-тригеры.
- •36.Паралельные и последовательные регистры.
10. Алгебраическое сложение десятичных чисел, представленных в коде 8-4-2-1.
11. Алгебраическое сложение чисел в форме с плавающей точкой.
При представлении чисел с плавающей запятой вес определенного разряда мантиссы определяется не только его позицией в разрядной сетке, но и порядком числа. В связи с этим операцию алгебраического сложения можно представить последовательностью действий, определяемых выражением
Mx•dk + My•dp = (Mx•dk-p + My)dp = (Mx,выр. + My)dp = Mz•dp
Где Mх и Му – соответственно мантиссы слагаемых чисел Х,У; Мz – мантисса числа Z, полученного в результате сложения; d – основание используемой системы счисления; k и p – соответственно значение меньшего и большего порядков слагаемых чисел; Мх,выр – выровненная мантисса слагаемого, имеющего меньший порядок.
Согласно указанному выражению операцию алгебраического сложения чисел с плавающей точкой проводят в несколько этапов:
1. Выравнивание порядков. На данном этапе производится выравнивание мантиссы числа с меньшим порядком относительно мантиссы числа с большим порядком, чтобы вес одноименных разрядов мантисс слагаемых был одинаковый. Выравнивание мантиссы с меньшим порядком состоит в ее арифметическом сдвиге вправо на количество разрядов, равное разности порядков слагаемых чисел. Процедура выравнивания в сторону большего порядка производится с тем, чтобы в результате не получить мантиссы с абсолютным значением больше единицы.
2. Сложение мантисс. Выровненные мантиссы чисел складываются в дополнительном коде аналогично сложению чисел с фиксированной точкой. Порядок числа, полученного в результате сложения, равен большему порядку из слагаемых чисел.
3. Нормализация результата. При сложении мантисс возможны случаи переполнения разрядной сетки (нарушение нормализации слева от точки). Данная ситуация фиксируется с помощью признаков, аналогичных признакам сложения чисел с фиксированной точкой. Восстановление нормализации производится путем сдвига суммы мантисс на один разряд вправо, а порядок числа увеличивается на единицу. Возможны также случаи, когда в сумме мантисс могут быть только нули в старших разрядах (нарушение нормализации справа от точки). В этих случаях сумма мантисс сдвигается влево на такое количество разрядов, чтобы старшая цифра была отлична от нуля, а порядок числа уменьшается на количество произведенных сдвигов. В случае если все разряды суммы мантисс равны нулю, нормализация не проводится и порядок числа устанавливается нулевым.
Рассмотрим примеры алгебраического сложения чисел, представленных в форме с плавающей запятой.
Пусть складываются числа
Х= +0,10100•(10)+101
У= -0,1011•(10)+100
На этапе выравнивания порядков необходимо определить количество разрядов на которое должна быть сдвинута мантисса числа, имеющего меньший порядок. Для этого нужно определить разность порядков слагаемых чисел. Данную операцию проведем путем алгебраического сложения порядков в дополнительном коде, при этом знак большего порядка изменим на противоположный.
- 1012 → (1011)доп
+ 1002 → +(0100)доп
(1111)доп → (1001)пр → -0012 = -110
Исходя из полученного результата, сдвинем мантиссу числа Х на один разряд вправо.
МУвыр= - 0,010112
Проведем операцию сложения выровненных мантисс в дополнительных кодах.
МХ= +0,101002 → (010100)доп
МУвыр= -0,010112 → +(110101)доп ↓ нарушение нормализации
Отбр ← 1(001001)доп → (001001)пр → +0,010012
Поскольку в старшем разряде модуля суммы мантисс находится нуль, то необходимо провести нормализацию результата. Для этого сдвинем сумму мантисс на один разряд влево, а значение порядка числа уменьшим на единицу. В итоге получаем нормализованный результат сложения исходных чисел.
+0,101002•10 +101 + (-0,10110)2•10100 = +0,100102•10100
В следующем примере рассмотрим случай когда при сложении нарушается нормализация слева от запятой (переполнение разрядной сетки).
Допустим необходимо сложить числа
Х= +0,10100•(10)2+011
У= +0,11100•(10)2+101
Определим разность порядков слагаемых при изменении знака большего порядка.
-1012 → (1011)доп
+0112 → +(0011)доп
(1110)доп
(1110)доп → (1010)пр → -0102= -210
На основании полученного результата сдвинем мантиссу числа Х на два разряда вправо.
МХвыр= +0,001012
Проведем операцию сложения выровненных мантисс.
МХвыр= +0,001012 → (000101)доп
МУвыр= +0,111002 → +(011100)доп
(100001)доп
При получении результата был перенос в знаковый разряд и не было переноса из знакового разряда. Данная ситуация является признаком переполнения разрядной сетки мантиссы. Поэтому сдвигаем результат на один разряд вправо и увеличиваем порядок числа на единицу. В итоге результат сложения примет вид:
+0,10100•(10)2+011 + 0,11100•(10)2+101 = +0,10000•(10)2+110