- •Тверь 2004
- •Введение
- •Арифметика цвм Формы представления чисел в эвм
- •Представление чисел со знаком в эвм
- •Переполнение разрядной сетки
- •Модифицированные коды.
- •Умножение двоичных чисел в форме с плавающей запятой
- •Умножение чисел с фиксированной запятой на дсдк, схема 1
- •Умножение двоичных чисел с фиксированной запятой на дсок, схема 1
- •Умножение двоичных чисел с фиксированной запятой на дсдк, схема 2
- •Умножение двоичных чисел с фиксированной запятой на дсок, схема 2
- •Умножение двоичных чисел с фиксированной запятой на дсдк, схема 3
- •Умножение двоичных чисел с фиксированной запятой на дсок, схема 3
- •Умножение двоичных чисел с фиксированной запятой на дсдк, схема 4
- •Умножение двоичных чисел с фиксированной запятой на дсок, схема 4
- •Деление двоичных чисел с плавающей запятой.
- •Деление двоичных чисел с фиксированной запятой с восстановлением остатка
- •Деление двоичных чисел с фиксированной запятой без восстановления остатка.
- •Алгоритмы перевода чисел из системы счисления с основанием p в систему счисления с основанием q Перевод правильной дроби из кода д1 в двоичную систему счисления
- •Перевод правильной дроби из двоичной системы счисления в код д1
- •Перевод целого числа из кода д1 в двоичную систему счисления
- •Перевод целого двоичного числа в код д1
- •Основные сведения о конечных цифровых автоматах
- •Абстрактная теория цифровых автоматов
- •Совмещенная модель автомата (с-автомат)
- •Функционирование цифрового автомата во времени
- •Канонический метод структурного синтеза цифровых автоматов
- •Элементы памяти в цифровых автоматах
- •Проектирование автомата Мили Кодированная таблица переходов-выходов
- •Проектирование автомата Мура
- •Принцип микропрограммного управления в цифровых автоматах
- •Алгоритм отметки гса и построение автомата Мура
- •Тривиальная реализация цифрового автомата
- •Кодирование состояний. Гонки в автомате
- •Замена входных переменных и кодирование состояний
- •Кодирование микрокоманд
- •Матричная реализация комбинационных схем и автоматов
Умножение двоичных чисел с фиксированной запятой на дсок, схема 1
В этом случае рассуждения совпадают со схемой предыдущего раздела. Однако, так как правило образования обратного кода отрицательного числа имеет вид [B]o=p + B - 1*2-n, схема Горнера принимает следующий вид:
[C]o = [A]o*(b12-1+b22-2+…+bn2-n-1+1*2-n).
(4)
Подставляя (4) в произведение, получим
[C]o= b1 ([A]o2-1)+b2([A]o2-2) +…+ bn([A]o2-n) - SgB[A]o+ SgB*2-n.
(5)
Из (5) следует, что при умножении на отрицательный множитель на ДСОК выполняется две коррекции: первая коррекция (– SgB*[A]o) выполняется перед входом в цикл, вторая –
(+SgB*2-n) –после выхода из цикла.
Пример 2. Пусть А=-0.1101, В=-0.1011. Тогда [A]o = 1.0010, [B]o = 1.0100. Процедуру умножения и результат представим в виде таблицы 2.
Таблица 2 Умножение двоичных чисел с фиксированной запятой на ДСОК, схема 1
СМ |
РгА |
РгВ |
СТ |
Комментарии |
1.1111 1111 +0.1101 0000 0.1101 0000 + 1.1100 1011 0.1001 1011 + 1 0.1001 1100 +1.1111 0010 0.1000 1110 + 1 0.1000 1111
|
1.0010 1111 |
1.0100 |
4 |
Такт 1. СМ:=0, РгА:=[A]o|1111, РгВ:= [B]o, СТ:=4. |
|
|
|
Такт 2. Проверка знака В. SgB=1, следовательно выполняется первая коррекция: СМ:=СМ+РгА. |
|
1.1001 0111 |
01001 |
|
Такт 3. РгА:= R(1)РгА, РгВ:=СдвЦ L(1)РгВ, (так как после выхода из цикла потребуется выполнение второй коррекции (см. (5)), для сохранения знака применяем циклический сдвиг РгВ). При этом старший разряд переписывается на место младшего разряда этого же регистра. |
|
1.1100 1011 |
10010 |
3 |
Такт 4. Выполняется проверка РгВ[0]=1. Условие не выполняется. Поэтому такт подсуммирования пропускается, выполняются сдвиги и декремент счетчика: РгА:= R(1)РгА, РгВ:=L(1)РгВ, СТ:=СТ-1. |
|
|
|
|
Такт 5. Проверка: СТ=0. Условие не выполняется. Выполняется проверка РгВ[0]=1. Условие выполняется. СМ:=СМ+РгА. |
|
1.1110 0101 |
00101 |
2 |
Такт 6. РгА:= R(1)РгА, РгВ:=СдвЦ L(1)РгВ, СТ:=СТ-1. |
|
1.1111 0010 |
01010 |
1 |
Такт 7. Выполняется проверка РгВ[0]=1. Условие не выполняется. Поэтому такт подсуммирования пропускается, выполняются сдвиги и декремент счетчика: РгА:= R(1)РгА, РгВ:=СдвЦ L(1)РгВ, СТ:=СТ-1. |
|
|
|
0 |
Такт 8. Такт 7. Выполняется проверка РгВ[0]=1. Условие не выполняется. Поэтому такт подсуммирования пропускается, выполняется декремент счетчика: СТ:=СТ-1. |
|
|
1.0100 |
|
Такт 9. Проверка: СТ=0. Условие выполняется. Выход из цикла. РгВ:= СдвЦ L(1)РгВ, |
|
|
|
|
Такт 10. Выполняется проверка: РгВ(0)=1. Условие выполняется. Производится вторая коррекция. СМ:= СМ+РгА. Конец. |
Результат получился автоматически с правильным знаком.
