Знакомство с ЭКВМ - программирование


Главная / ЭКВМ / Начинающим

Первая программа будет на уже знакомую тему - перевод значения температуры из одной шкалы в другую. Для этого нажатием клавиш "F ПРГ" перейдем в особый режим работы, который так и называется - программирование.

После входа в этот режим на экран выводится таблица. В каждой из строк слева индицируется адрес памяти программ, далее код и обозначение записанной по этому адресу команды. Справа в некоторых случаях выводится символ, код которого соответствует коду команды, но это нам пока не требуется.

Экран режима програмирования

Для каждой команды существует как русское, так и латинское обозначение. Вид экрана переключается клавишей "Рус/Лат". Здесь используется традиционное написание команд.

Самая нижняя строка предназначена для ввода команд программы. Команда вводится по адресу, расположенному непосредственно над нижней строкой. Находящаяся ранее по этому адресу команда замещается на введённую после окончания набора.

Перемещение по программе для её просмотра без ввода новых команд выполняется клавишами "ШГ влево" и "ШГ вправо" или клавишами со стрелками.

Если вход в режим программирования был выполнен после включения ЭКВМ, то текущий адрес нулевой. Он выводится в нижней строке над строкой ввода. С этого адреса будем вводить программу, см. таблицу.

Адрес Код команды Обозначение команды Нажимаемые клавиши Примечание
0000 61h ИП 1 "ИП", "1" Считать число из регистра памяти 1
0001 12h × "×" Умножить на введенное
0002 62h ИП 2 "ИП", "2" Считать число из регистра 2
0003 10h + "+" Сложить с предыдущим результатом
0004 50h С/П "С/П" Останов и индикация результата
0005 51h БП 00 "БП" Безусловный переход на адрес 0000
0006 00h   "0","0"

Часть этой программы, которая относится к вычислениям, уже знакома. Команда "С/П" требуется для останова программы. После останова программа выводит результат расчётов и позволяет ввести следующее число. Команда безусловного перехода для вычислений не требуется, но позволяет работать с программой более удобным образом, не переходя каждый раз к началу программы вручную.

Обратите внимание, команда "БП 00" занимает в программе два адреса 0005 и 0006. Набирается она тоже особым образом. После нажатия клавиши "БП" ЭКВМ ожидает ввод адреса перехода и на другие клавиши, кроме цифровых, не реагирует.

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

После ввода программы командой "F АВТ" переходим обратно в режим автоматической работы. Так называется исходный режим, в котором можно выполнять вычисления вручную. Может быть, это и не самое удачное название, но оно используется в ЭКВМ для сохранения совместимости с ПМК.

После ввода программы следует в регистры с номерами 1 и 2 ввести коэффициенты 9/5 и 32 соответственно. Как это делается можно посмотреть на странице с примером ручных вычислений.

Перед самым первым запуском программы перейдём на адрес 0000. Для этого следует нажать клавишу "В/О". Её функция в режиме автоматической работы заключается в возврате на нулевой адрес при подготовке к запуску программы.

Проверим правильность ввода программы на тестовом примере. Введите в X число минус 38,84, соответствующее температуре плавления ртути по шкале Цельсия, и нажмите "С/П". На индикаторе вместо этого числа должно появиться минус 37,912 - та же температура по шкале Фаренгейта.

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

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

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

Из шкалы В шкалу
Цельсия °C Фаренгейта °F Кельвина K Ренкина °Rn Реомюра °R
Цельсия °C 1;
0
1,8;
32
1;
273,15
1,8;
491,67
0,8;
0
Фаренгейта °F 0,55556;
-17,78
1;
0
0,55556;
255,37
1;
459,67
0,44444;
-14,22
Кельвина K 1;
-273,15
1,8;
-459,67
1;
0
1,8;
0
0,8;
-218,52
Ренкина °Rn 0,55556;
-273,15
1;
-459,67
0,55556;
0
1;
0
0,44444;
-218,52
Реомюра °R 1,25;
0
2,25;
32
1,25;
273,15
2,25;
491,67
1;
0

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

Разумеется, можно, хотя программа будет сложнее. Зато это уже будет настоящая полезная программа для ЭКВМ.



НПП "СЕМИКО" (383) 271-01-25 (многоканальный)