Рисунок
1.5 – Блок-схема алгоритма расчета функции
ln(x)
Основной
недостаток алгоритма состоит в
длительном формировании результата с
учетом повторных вычислений. Выполним
модернизацию алгоритма и избавимся
от операции возведения в степень
xy. Система команд устанавливается
путем расстановки возле каждой вершины
ГСА мнемонического обозначения команды.
Модифицированная ГСА представлена на
рисунке 1.6.
Рисунок
1.6 – Модифицированная ГСА
Составим
таблицу команд компьютера (см. таблицу
1.4).
Таблица
1.4 – Перечень команд
№ |
Команда |
Операнды |
1 |
MOV |
Ri, M |
2 |
MUL |
Ri, Rj |
3 |
DIV |
Ri, Rj |
4 |
SUM |
Ri, Rj |
5 |
SUB |
Ri, Rj |
6 |
INC |
Ri |
7 |
JNZ |
метка |
8 |
JMP |
метка |
Расширим
систему команд за счет способов адресации
операндов: прямая, косвенная регистровая,
автоинкрементная, базово-индексная (см.
таблицу 1.5).
Таблица
1.5 – Форматы команд
№ |
Способ адресации |
Команда MOV |
I1 |
прямая |
|
I2 |
косвенная регистровая |
|
I3 |
автоинкрементная |
|
I4 |
базово-индексная |
|
I5 |
между регистрами |
|
Продолжение
таблицы 1.5
№ |
Способ адресации |
Команда MUL |
I6 |
прямая |
|
I7 |
косвенная регистровая |
|
I8 |
автоинкрементная |
|
I9 |
базово-индексная |
|
I10 |
между регистрами |
|
Продолжение
таблицы 1.5
№ |
Способ адресации |
Команда DIV |
I11 |
прямая |
|
I12 |
косвенная регистровая |
|
I13 |
автоинкрементная |
|
I14 |
базово-индексная |
|
I15 |
между регистрами |
|
Продолжение
таблицы 1.5
№ |
Способ адресации |
Команда SUM |
I16 |
прямая |
|
I17 |
косвенная регистровая |
|
I18 |
автоинкрементная |
|
I19 |
базово-индексная |
|
I20 |
между регистрами |
|
Продолжение
таблицы 1.5
№ |
Способ адресации |
Команда SUB |
I21 |
прямая |
|
I22 |
косвенная регистровая |
|
I23 |
автоинкрементная |
|
I24 |
базово-индексная |
|
I25 |
между регистрами |
|
Продолжение
таблицы 1.5
№ |
Способ адресации |
Команда INC |
I26 |
прямая |
|
I27 |
косвенная регистровая |
|
I28 |
автоинкрементная |
|
I29 |
базово-индексная |
|
Продолжение
таблицы 1.5
№ |
Способ адресации |
Команда INC |
I30 |
прямая |
|
I31 |
косвенная регистровая |
|
I32 |
автоинкрементная |
|
I33 |
базово-индексная |
|
Продолжение
таблицы 1.5
№ |
Способ адресации |
Команда INC |
I34 |
прямая |
|
I35 |
косвенная регистровая |
|
I36 |
автоинкрементная |
|
I37 |
базово-индексная |
|
КОП
– код операции базовой команды.
mod
– модификатор адреса.
Ri
– регистр источник/приемник пересылаемого
операнда.
Rj,
Rx – регистры косвенной адресации.
Кроме
команд реализации вычислений по ГСА
ln(x), в систему команд включают команды
ввода-вывода и команды, используемые
при тестировании памяти. Определим разрядность
поля КОП:
int(log2(8
команд + 2 ввод/вывод + 1 тест)) = 4
Разрядность
поля mod равна 3, т.к. возможно 5 видов адресации.
Полная
таблица кодирования команд представлена
в таблице 1.6.
Таблица
1.6 – Полная система команд
№ |
КОП |
mod |
Тип |
Примечание |
1 |
2 |
3 |
4 |
5 |
I1 |
0001 |
000 |
RS |
Команда регистр-память |
I2 |
0001 |
001 |
RS |
Косвенно-регистровая;
в регистре Rj содержится адрес оперативной
памяти |