Калькулятор - программирование |
Главная / ЭКВМ / Техническая информация / РЭ |
4.4.3. Программирование4.4.3.1. Экран режима программированияРежим программирования предназначен для занесения с клавиатуры в память программ ЭВМ команд программы пользователя. Вход в режим программирования осуществляется нажатием клавиш "F ПРГ" при нахождении в режиме автоматической работы.
Программа выводится на экран построчно в виде таблицы из четырех столбцов: адрес; код команды; мнемоническое обозначение; символ, соответствующий коду команды. Символ отделен от мнемонического обозначения команды символом ";". Мнемоническое обозначение команд выводится на экран в русской или латинской транскрипции. Для изменения установленного обозначения нажмите клавишу "Рус/Лат". Нажатие клавиш "ШГ влево", "ШГ вправо" и клавиш "ВЫБОР" позволяет изменить текущий адрес без изменения записанной команды. Для перехода на произвольный адрес нажмите клавишу "ВВОД", введите адрес и повторно нажмите "ВВОД". Для перехода в режим ввода байтов в память программ введите команду "P ПРГ". Для возвращения ЭВМ в режим автоматической работы выполните команду "F АВТ" или "P АВТ". Для выхода в главное меню нажмите клавишу "ВЫХОД". 4.4.3.2. Ввод командДля ввода команд в память программ следует последовательно нажимать на клавиши, соответствующие обозначению команды в русской транскрипции. Очередная команда вводится в память по текущему адресу, после чего счетчик адреса увеличивается на длину введённой команды. В программе могут быть использованы все команды, которые выполняются в режиме автоматической работы. Команды "С/П", "В/О" и "ПП" в программе имеют другое назначение. При запуске программы командой "С/П" состояние признака перезаписи не изменяется, поэтому не рекомендуется начинать программу с команд ввода числа. В программе могут применяться команды условных переходов, организации циклов и подпрограмм, а также команды управления, которые в режиме автоматической работы не выполняются. Для удаления ошибочно набранной части команды следует нажать клавиши "F CF". 4.4.3.3. Условные переходы4.4.3.3.1. Команды условных переходов предназначены для организации ветвлений в программе пользователя. Команды изменяют содержимое счетчика адреса в зависимости от выполнения условия. В качестве условий в ЭВМ используется сравнение содержимого регистра X с нулем: "x<0", "x=0", "x≥0" и "x≠0". Содержимое стека не изменяется. 4.4.3.3.2. Команды вызывают изменение счетчика адреса, если записанное в команде условие не выполняется. Если условие выполняется, то следующей будет исполнена команда, записанная непосредственно за командой условного перехода. 4.4.3.3.3. Команды "F x<0 NN", "F x=0 NN", "F x≥0 NN" и "F x≠0 NN" вызывают переход на адрес NN в пределах от 0 до 99 на текущей странице, если условие не выполняется. 4.4.3.3.4. Команды "P x<0 NNNN", "P x=0 NNNN", "P x≥0 NNNN" и "P x≠0 NNNN" вызывают переход на адрес NNNN в пределах от 0 до 9999, если условие не выполняется. 4.4.3.3.5. Команды косвенных условных переходов "K x<0 M", "K x=0 M", "K x≥0 M" и "K x≠0 M" вызывают переход на адрес, записанный в регистре памяти M (от 0 до E), если условие не выполняется. Содержимое регистра M модифицируется. 4.4.3.3.6. Команды косвенных условных переходов "PK x<0 MM", "PK x=0 MM", "PK x≥0 MM" и "PK x≠0 MM" вызывают переход на адрес, записанный в регистре памяти MM (от 0 до 99), если условие не выполняется. Содержимое регистра MM модифицируется. 4.4.3.4. Команды организации циклов4.4.3.4.1. Команды предназначены для организации циклических вычислений в программе пользователя. Команды вызывают изменение счетчика адреса в зависимости от значения, записанного в регистр памяти с номером от 0 до 3. Номер регистра входит в обозначение команды после символа 'L'. Содержимое регистра модифицируется при выполнении команды. Переход по записанному в команде адресу происходит, если значение в соответствующем регистре памяти больше единицы. В таком случае содержимое данного регистра декрементируется - из него вычитается единица. Если значение меньше или равно единице, то выполняется команда программы, следующая непосредственно за командой организации цикла. 4.4.3.4.2. Команды "F L0 NN", "F L1 NN", "F L2 NN" и "F L3 NN" вызывают переход на адрес NN от 0 до 99 в пределах текущей страницы, если значение в соответствующем регистре памяти больше единицы. 4.4.3.4.3. Команды "PF L0 NNNN", "PF L1 NNNN", "PF L2 NNNN" и "PF L3 NNNN" вызывают переход на адрес NNNN от 0 до 9999, если значение в соответствующем регистре памяти больше единицы. 4.4.3.4.4. При организации цикла с переходом в сторону уменьшения адреса, количество проходов по циклу будет совпадать со значением числа, изначально записанного в соответствующий регистр. После выхода из цикла в регистре остается число один. 4.4.3.5. Команды организации подпрограмм4.4.3.5.1. Подпрограммы применяются для замены повторяющихся последовательностей команд в различных местах программы. 4.4.3.5.2. При переходе на подпрограмму, адрес команды, следующей за командой перехода, запоминается в стеке возврата. При возврате из подпрограммы, последний записанный адрес из стека возврата переносится в счетчик адреса. 4.4.3.5.3. Подпрограмма может быть вызвана из другой подпрограммы. Глубина возможных вложений определяется размером стека возврата. В ЭВМ возможно использование до 64 уровней вложения подпрограмм. 4.4.3.5.4. Команда "ПП NN" вызывает переход на подпрограмму по адресу NN от 0 до 99, в пределах текущей страницы. 4.4.3.5.5. Команда "Р ПП NNNN" вызывает переход на подпрограмму по адресу NNNN от 0 до 9999. 4.4.3.5.6. Команды "К ПП M" и "РК ПП ММ" вызывают переход на подпрограмму по адресу, записанному в регистрах М (от 0 до Е) и ММ (от 0 до 99) соответственно. Содержимое регистров М и ММ модифицируется. 4.4.3.5.7. Команда "В/О" вызывает возврат из подпрограммы. Если команда "В/О" использована вне подпрограммы (адрес в стеке возврата отсутствует), то происходит безусловный переход на адрес 01 в пределах текущей страницы. 4.4.3.6. Команды управления4.4.3.6.1. Команда "С/П" вызывает останов вычислений по программе. После исполнения команды ЭВМ переходит из режима выполнения программы в режим автоматической работы. На экран выводятся значения регистров стека. Значение счетчика адреса устанавливается на команду, следующую за командой "С/П". 4.4.3.6.2. Команды "К -" и "К ÷" вызывают аварийный останов вычислений по программе. После исполнения команд ЭВМ переходит из режима выполнения программы в режим автоматической работы. На экран выводятся значения регистров стека, в поле вывода регистра Х заносится сообщение "ERROR". Значение счетчика адреса устанавливается на команду, следующую за командой аварийного останова. 4.4.3.6.3. Команда "К НОП" - нет операции, никаких действий не вызывает. Обычно применяется при редактировании программы для исключения отдельных команд. 4.4.3.6.4. Команда "К ЭКР" вызывает обновление содержимого экрана в процессе выполнения программы. Применяется для индикации результатов промежуточных вычислений и отображения строки комментариев. 4.4.3.6.5. Команда "К ГРФ" выводит на индикатор содержимое графического экрана в процессе выполнения программы. Применяется для вывода результатов вычислений в графическом виде. 4.4.3.6.6. Команда "РР В/О" вызывает возврат из прерывания. Механизм прерываний в ЭВМ реализован при помощи функций, адресуемых через регистры памяти. При использовании вне прерывания действие аналогично команде "В/О". 4.4.3.7. Использование регистров функций4.4.3.7.1. В программе пользователя могут использоваться различные возможности ЭВМ, которые не определяются её системой команд. Эти возможности, например, работа с внешними устройствами, подача звуковых сигналов, вывод информации на графический экран и другие, поддерживаются путем обращения к определённым регистрам функций. 4.4.3.7.2. Обращение к регистрам функций для записи и вызова содержимого может выполняться любыми командами ЭВМ, в том числе с использованием косвенной адресации. Некоторые функции в качестве входных параметров используют несколько аргументов, которые должны быть помещены в стек в определенном порядке перед обращением к регистру функции. 4.4.3.7.3. Большинство регистров функций требует записи значений в определенном формате. При записи других значений будет выполнено автоматическое приведение к требуемому формату. Примечание. Для записи в регистр значения байта из числа отбрасывается дробная часть, числа меньше нуля заменяются нулем, числа больше 255, числом 255. Аналогичным образом выполняется преобразование и в других случаях. Запись в регистры, которым не поставлено в соответствие какое-либо устройство, никаких действий не вызывает. Записанное число нигде не сохраняется. 4.4.3.7.4. Вызов числа из регистров устройств записывает в регистр Х параметр, определяемый устройством. Если регистру не поставлено в соответствие какое-либо устройство или чтение из него не поддерживается, содержимое стека не изменяется. Некоторые регистры функций при чтении возвращают в стеке несколько значений. Перемещение информации в стеке при этом выполняется аналогично поочередному чтению нескольких чисел. |
||
|
НПП "СЕМИКО" (383) 271-01-25 (многоканальный) |