Инструкция для машины
Программа работы электронной вычислительной машины для решения
определенной задачи составляется специалистами и через вводное устройство
"вводится" в машину перед началом вычислений.
Программа представляет собой последовательность отдельных "команд".
Каждая команда состоит из указания определенного арифметического
действия (сложение, вычитание, умножение и т. д.), номеров (или
"адресов") тех ячеек памяти, откуда следует взять числа, над которыми
должно быть произведено действие, а также номера (или "адреса")
ячейки, куда должен быть помещен полученный результат.
Каждое арифметическое действие условно обозначается числом - "кодом",
хотя бы так: сложение -"1", вычитание - "2", умножение - "3" и т.
д. Адреса ячеек памяти также обозначаются номерами, например: №
20, № 21, № 22, .... В целом вся команда записывается в виде одного
многозначного числа, в котором на первом месте стоит код действия,
на втором и третьем местах - адреса чисел, над которыми надо совершать
это действие, а на последнем (четвертом) месте - адрес ячейки, куда
должен быть направлен полученный результат. Так, например, команда
3-21-26-52 предписывает перемножить числа, взятые из ячеек № 21
и 26, и поместить произведение в ячейку № 52. Такие команды называются
трехадресными. Возможны команды и с иным числом адресов.
Поскольку команды управления машиной записываются многозначными
числами, они наравне с другими числами могут быть помещены в ячейки
запоминающего устройства: первая - в ячейку № 1, вторая - в ячейку
№ 2 и т. д.
Помимо арифметических команды могут задавать машине и некоторые
другие действия, скажем: "Сравнить два числа", "Отпечатать число,
хранящееся в такой-то ячейке памяти, в такую-то графу таблицы".
Составление программы и работа управляющего устройства лучше всего
разъясняются на каком-нибудь простеньком примере. Рассмотрим для
этой цели составление таблицы значений площади круга, о которой
мы уже говорили, описывая работу вычислителя.
Программа для выполнения соответствующих вычислений имеет такой
вид:
Номер команды |
Шифр команды |
Действие по команде |
1 |
3-21-21-19 |
Умножение |
2
|
3-19-20-19 |
Умножение |
3 |
7-21-00-01 |
Печатание |
4 |
7-19-00-02 |
Печатание |
5 |
1-21-23-21 |
Сложение |
6 |
8-21-22-01 |
Сравнение |
7 |
9-00-00-00 |
Остановка |
Как видим, программа состоит всего из семи команд, которые перед
началом работы при помощи вводного устройства размещают в ячейки
памяти с адресами от № 1 до № 7. Помимо программы в машину вводятся
еще и необходимые исходные данные (рис. 11): в ячейку № 20 - число
Пи = 3,14; в ячейку № 21 - наименьшее значение радиуса (500),
с которого должна начинаться таблица; в ячейку № 22 -наибольшее
значение радиуса (1000); в ячейку № 23 - число 2, показывающее,
что значения радиуса надо брать через каждые 2 мм; ячейка № 19 будет
использоваться для записи в нее промежуточных результатов.
Рис. 11. Размещение исходных данных.
|