Составители:
56
Таблица 2.10
Первый вариант программы для получения Z=50Y
Адрес
Содержимое
Комментарии
Код
Мнемоника
5
6
7
8
0078
0000
0032
0000
Y
Z
M
C
Множимое (здесь десятичное значение 120)
Ячейка, отведенная для накопления результата. В ней
поочередно будут храниться значения Y, 2Y, 3Y,…
После 50 суммирований в ней будет содержаться
искомый результат 50Y
Множитель 50=(32)
16
Ячейка, используемая для накопления числа
выполняемых циклов – счетчик циклов
10
11
12
13
F200
4006
4005
3006
CLA
ADD 6
ADD 5
MOV 6
К промежуточному результату, находящемуся в
ячейке 6, добавляется ещѐ одно значение множимого
Y
14
15
16
17
F200
4008
F800
3008
CLA
ADD 8
INC
MOV 8
Содержимое счетчика циклов увеличивается на 1, а
его копия пока сохраняется в аккумуляторе
18
19
1A
6007
A010
F000
SUB 7
BMI 10
HLT
Если содержимое счетчика циклов меньше значения
множителя, то выполняется переход к командам, осу-
ществляющим очередное суммирование Y с
промежуточ-ным значением Z. В противном случае
выполняется следующая команда (команда HLT)
Останов ЭВМ. В ячейке 6 содержится результат
Большего упрощения программы можно добиться при
накоплении результата непосредственно в аккумуляторе, а не в
ячейке 6. Тогда команды с 10 по 13 можно было бы заменить всего
одной командой ADD 5. Однако в обсуждаемом варианте программы
(см. табл. 2.10) аккумулятор пришлось использовать еще и для
изменения числа циклов, что привело к необходимости сохранения
промежуточного результата Z в памяти ЭВМ. Следовательно, для
упрощения циклических программ целесообразно иметь в составе
команд базовой ЭВМ команду, позволяющую организовать счетчик
циклов без затрагивания аккумулятора. Такой командой является
ISZ.
Команда ISZ (ПРИРАЩЕНИЕ И ПРОПУСК) служит для
увеличения на 1 содержимого адресуемой ячейки памяти и перехода
к одному из двух путей продолжения программы в зависимости от
знака этого содержимого. Так, при каждом выполнении команды ISZ
М, расположенной по адресу А, к содержимому ячейки с адресом М
добавляется 1, и если результат меньше нуля, то выполняется
команда, следующая за ISZ М (команда, расположенная по адресу
А+1); в противном случае эта команда пропускается, т. е. выполняется
Страницы
- « первая
- ‹ предыдущая
- …
- 57
- 58
- 59
- 60
- 61
- …
- следующая ›
- последняя »
