Таблица 4.7
Тип
Слово
Пояснение
ILO
RG(0:16)
Переменная x,n,b,a,F множитель, произведение, делимое,
остаток, частное, слагаемое, сумма,
уменьшаемое, разность
IL
RG1(0:15)
Переменная F,b,a
константа,
Множимое, делитель, слагаемое, вычитаемое
L
RG2(0:16)
Множитель, произведение, частное
RG3(0:15)
Переменная F
RG4(0:15)
Переменная x,a,b
RG5(0:15)
Переменная n
CT(1:4)
Счетчик
ПП
Признак переполнения
Теперь необходимо составить схему укрупненного алгоритма, используя уже полученную микропрограмму вычисления функции Arth(x). Предполагается, что переменные x1, x2 и x3 перед началом выполнения программы уже будут загружены соответственно в регистры RG4, RG3 и RG5. Данная схема алгоритма представлена на рисунке 4.8:
Рисунок 4.8 - Схема алгоритма
В таблице 4.8 представлено описание слов, использованных в программе. Так как описание слов для микропрограммы вычисления специальной функции было представлено в таблице 4.7, здесь приводится описание только тех слов, которые принимали значения отличные от тех, что использовались в алгоритме на рисунке 4.7.
Таблица 4.8
Переменная x1, x2,X делимое,
остаток, частное,
абсолютная величина числа
Переменная x2, x3
константа, делитель, вычитаемое
Переменная x2
Переменная x1, X
Переменная x3
Процессор состоит из АЛУ и УЦУ.
В объединенном списке микроопераций, используемых в микропрограммах минимального набора операций АЛУ, для унификации формы записи различных операций и форматов одноименных слов следует по сравнению с рисунком 4.3 изменить три микрооперации:
- для вершины 2 вместо микрооперации RG2 := RG нужно использовать микрооперацию RG2 := RG(1:16).0;
- для вершины 6 вместо микрооперации RG2(1:15):=R1(RG (15).RG2(1:15)) - использовать микрооперацию RG2(1:15):=R1(RG(16).RG2(1:16);
- вместо микрооперации RG(0):=1 в вершине 11 - использовать микрооперацию RG(0:1):=11.
Благодаря этим изменениям значение числовой части результата каждой операции присваивается полю RG(2:16) слова RG, а нулевой и первый разряды этого слова используются для представления знака числа. Появляется возможность считать, что перед началом каждой операции над двумя операндами в АЛУ значение первого операнда присваивается полю RG(1:16) слова RG, а значение второго операнда - слову RG1. При выполнении этого условия перед началом сложения и вычитания необходимо произвести присваивание RG(0) := RG(1), перед началом умножения нужно осуществить передачу RG2 := RG(1:16).0, а перед делением - микрооперации RG2(0):= RG(1) и RG(0:1):= 00.
В таблице 5.1 приведен список логических условий, используемых в микропрограммах:
Таблица 5.1
Обозначение
Лог. Условие
Тип операции
X1
RG(0)
Сложение и
Вычитание
X2
RG1(0)
X3
RG(1)
X4
RG2(15)
Умножение
X5
CT=0
X6
RG2(1)
X7
RG1(0)RG2(0)
Деление
X8
RG2(16)
Умножение на «2»
X9
RG(2)
Вычисление функции Arth(x)
X10
В таблице 5.2 приведен список микроопераций, используемых в микропрограммах:
Таблица 5.2
№
Микрооперации
Y1
RG(0):=RG(1)
Сложение
Y2
RG(2:16):= RG(2:16) +
Y3
RG:=RG+RG1(1:15)
Y4
RG:=RG+11. RG1(1:15)+
Y5
ПП:=1
Y6
RG1(0):= RG1(0)
Y7
RG2:=RG(1:16).0
Y8
RG:=0
Y9
CT:=1510
Y10
RG2(1:16):=R1(RG(16).RG2(1:16))
Y11
RG(1:16):=R1(0.RG(1:16))
Y12
CT:=CT-1
Y13
RG:=RG+
Y14
RG(0:1):=11
Y15
RG2(0):=RG(1)
Y16
RG(2:16):=L1( RG(2:16).0)
Y17
CT:=0
Y18
RG2(1:16):=0
Y19
RG2(1:16):=L1(RG2(1:16). RG(0))
Y20
RG:=RG2(1:15)
Y21
RG(0:1):=00
Выделение абсолютной величины числа
Y22
RG3:=RG4
Y23
RG5:=
Y24
RG:=RG4
Y25
RG1:=RG
Y26
RG4:=RG
Y27
RG:=RG5
Y28
RG4:=RG1
Y29
RG1:=
Y30
RG5:=RG5+
Y31
RG:=RG3
Страницы: 1, 2, 3