Тема: Сайт групп факультета ИТ МИРЭА :: Курсовая в 4м семестре

Прислано Grandi 16.12.2011 17:45
#7

Ребят, кто разбирается и кому не сложно, накидайте мне операц. автомат, а то Антик уже запарил. Желательно ко вторнику.
Мои операции и алгоритмы к ним:
Коп=0, умножение двух целых чисел в доп. коде:
Алгоритм:
1) Исходное значение сумм частичных произведений принимается равным 0.
2) Если анализируемая цифра множителя равна 1, то к сумме частичных произведений прибавляется множимое. Если цифра равна 0, прибавление не производится.
3) Сумма частичных произведений сдвигается на один разряд вправо, при этом, если сумма отрицательна, осуществляется модифицированный сдвиг, т. е. сдвиг с расширением знака.
4) Последовательно выполняются п. 2 и 3 для всех цифровых разрядов множителя, начиная с младшего.
5) Если множитель – положительное число, полученный результат представляет произведение в дополнительном коде. Если множитель отрицателен, то для получения произведения из результата вычитают множимое в дополнительном коде.

Коп=1, обратная величина числа, представленного в формате с плавающей запятой:
Алгоритм:
1) С входной шины поступает нормализованное число в формате с плавающей запятой, которое записывается в регистр. Для нахождения обратного числа необходимо 1 разделить на само число.
2) Используется алгоритм деления без восстановления остатка. Делимым будет 1, а делителем поступившее число.
3) Чтобы получить правильный результат надо разделить мантиссы делимого и делителя. Для этого сдвинув регистр содержащий делимое влево, сравнивается его знак со знаком делителя, и из регистра делимого вычитается регистр делителя.
4) Результат записывается в регистр делимого.
5) Действие продолжается до тех пор, пока не будет заполнена вся мантисса результата, т.е. 24 раза, поэтому счетчик каждый раз уменьшает свое значение на 1.
6) Последним тактом в этом случае является вычисление порядка результата, для этого из порядка 1 вычитается порядок делителя.