Блок выравнивания порядков

Введение.

       Процесс, который привел к появлению современных компьютеров, был чрезвычайно быстрым. Одним из самых важных достижений, приведших к революции в персональных компьютерах, было изобретение полупроводника или транзистора в 1948 году.

       В современных ЭВМ одним из основных элементов является блок АЛУ (арифметико-логическое устройство), которое осуществляет арифметические и логические операции над поступающими в ЭВМ  машинными словами.

В ранних моделях компьютеров использовались только числа в форме с фиксированной запятой. В дальнейшем возникла необходимость использования чисел с плавающей запятой, для этого сначала применялись сопроцессоры. В настоящее время благодаря появлению новой технологии MMX позволяющей процессору обрабатывать числа и с фиксированной и с плавающей запятыми, резко возросла скорость работы компьютера со средствами мультимедиа: графикой звуком и т.д.

Алгоритм.

При сложении мантисс необходимо чтобы  веса единиц одноимённых разрядов мантиссы чисел были одинаковыми. Для этого мантиссы сдвигаются  относительно друг друга, так чтобы их порядки стали равными. Чтобы при выравнивании порядков не получить мантиссы  больше 1, их сдвигают в сторону большего порядка.

       В блок по двум шинам данных вводятся мантиссы и порядки чисел 1 и 2.

МА- Мантисса первого числа.

МВ- Мантисса второго числа.

РА- Порядок первого числа.

РВ- Порядок второго числа.

       Затем из порядка первого числа вычитается порядок второго числа: получаем H-Разность порядков. Далее в зависимости от знака полученного результата:

1. при H>0 увеличиваем PA  до PB,        P=PA+H.

       2. при H<0 увеличиваем PA  до PB,        P=PA+H.

       3. при H=0 коррекция не нужна. Рс- Порядок результата.

Затем производится проверка на возможность переполнения, которое возможно, если смещение превысит 10 позиций, т.е. разрядность мантиссы. Для этого |H| сравнивается с 10, если |H|>10, то выдаётся сигнал переполнения. Если |H|<10 , то переполнения нет.

Далее необходимо выполнить сдвиг мантиссы соответствующей меньшему порядку, влево на количество знаков равное H, т.е. Разность порядков.

Таким образом, мы  имеем выровненный порядок и две мантиссы одна из которых, сдвинута в соответствии с изменившемся порядком. Эти три величины подаются на выход.

Блок-схема алгоритма.

.

Блок-схема алгоритма.

Описание блок-схемы алгоритма.

1.С 16 разрядной двунаправленной шины данных одновременно принимаются порядок и мантисса числа тАЬАтАЭ.

2.Порядок и мантисса числа тАЬАтАЭ преводятся в дополнительный код.

3.с шины данных одновременно принимаются порядок и мантисса числа тАЬBтАЭ.

4.Порядок и мантисса числа тАЬBтАЭ преводятся в дополнительный код.

5.Из порядка числа тАЬАтАЭ вычитается порядок числа тАЬВтАЭ.

6.Разность порядков сравнивается с 10.

7.Если разность ≥10, то в зависимости от знака, выровненный порядок равен порядку числа тАЬВтАЭ при отрицательной разности

и порядку числа числа тАЬАтАЭ при положительной разности.

8.соответственно мантисса числа тАЬАтАЭ и мантисса числа тАЬВтАЭ =0.

9.Если разность порядков <10, то она сравнивается с 0 и если она =0, то порядки чисел равны и сдвиг не требуется.

10.Если разность ≠0, то она заносится в вычитающий счётчик.

11.В зависимости от знака сдвигается мантисса числа тАЬАтАЭ при отрицательной разности и мантисса числатАЭВтАЭ.

12.Уменьшенная на счётчике разность сравнивается с 0 и если

она =0,цикл завершается, и в зависимости от знака порядок Рс=Ра

при М>0 и Рс=Рв при М<0. Если М≠0 цикл повторяется.

Схема структурная.

Описание блок-схемы структурной.

1.С шины данных в регистры RG1, RG3 принимаются:мантисса Ма и порядок Ра а прямом коде.

2.Далее в регистры RG2 и RG4 принимаются: мантисса Мв и порядок Рв

в прямом коде.

3.Ра и Рв переводятся в дополнительный код и записываются в регистры RG1 и RG2.

4.На сумматоре SM1 из [Ра]доп. Вычитается [Pв]доп. И результат [М]доп. записывается в регистр RG6.

5.[М]Доп. Из RG6 [М]доп. Подаётся на преобразователь кода CODE3   

и переводится в прямой код.

6.Из регистра RG6 [М]пр заносится в компаратор KOMPAR1 и сравнивается с 10.

7.Если компаратор  выдаёт сигнал М⊇10, то в зависимости от знака при м>0 Pc(RG7) -выровненный порядок приравнивается либо к Pa RG1 и Мв(RG4)=0, При M<0 Pc=Pb (RG7=RG2) и Ма=0(RG2=0).

8.Если компаратор (KOMPAR1) выдаёт сигнал M<0, то на компараторе KOMPAR3 M сравнивается с 0,При М=0 Pc=Pa=Pb, (RG7=RG1), сдвиг не нужен.

Если М≠0, то М заносится в вычитающий счётчик S-1 и при каждом цикле уменьшается на единицу, в зависимости от знака сдвигая вправо на 1 разряд Ма при М<0 и Мв при М>0.

9.Затем [М]пр из счётчика подается в компаратор KOMPAR1 и сравнивается с 0.

Если М≠0, то цикл повторяется, если М=0, то RG2 и RG7; и

RG3 и RG7 выдаются на шину данных.

Описание управляющих сигналов.

Ус1- по этому сигналу с шины данных в регистры 1 и 3 одновременно принимаются порядок и мантисса числа тАЬАтАЭ.

Ус2- по этому сигналу с шины данных одновременно в регистры 2 и 3 принимаются порядок и мантисса числа тАЬВтАЭ.

Ус3- по этому сигналу порядки чисел А и В в обратном коле одновременно записываются из преобразователей кода в регистры 1 и 2 соответственно.

Ус4- по этому сигналу из сумматора SM1 разность порядков [М]пр.

Записывается в регистр RG6.

Ус5- по сигналу УС5 происходит запись выровненного порядка Pc в регистр RG7. 

Список элементов

1 6-разрядных,  тактируемых регистра (Рг1 Рг2 Рг5 Рг7)

2 10-разрядных, тактируемых регистра сдвиг вправо (Рг3 Рг4)

1 6-разрядный сумматор

1 6-разрядный вычитающий счётчик

3 6-разрядных компаратора = ≠

Вместе с этим смотрят:

Блок усиления мощности нелинейного локатора
Вакуумные люминесцентные индикаторы
Видеоусилитель
Виды модуляций радиосигнала