Практическая работа № 3. Команды управления и ветвления
Цель работы: 1. Изучение команд управления ходом вычислений для модельной ЭВМ. 2. Разработка программы реализующей ветвящийся вычислительный процесс на модели учебной ЭВМ.
Теоретические сведения:
Команды управления модельной ЭВМ
К этому классу команд относятся, которые изменяют естественный порядок выполнения команд программы. Эти команды меняют содержимое программного счетчика, обеспечивая переходы по программе. Существуют следующие виды команд управления: - команды переходов; - команды вызова подпрограмм (процедур); - системные команды управления процессом обработки информации и внутренними ресурсами процессора. 1. Команды передачи управления; Различают два вида переходов в программах: - безусловный переход; - условный переход. В последнем случае передача управления происходит, если выполняется заданное в коде команды условие, иначе выполняется следующая по порядку команда. В качестве условий обычно используются признаки результата предыдущей операции, которые хранятся в специальном регистре признаков (флажков). Чаще всего формируются и проверяются признаки: - нулевого результата; - отрицательного; - результата; - наличия переноса из старшего разряда; - четности числа единиц в результате и др. Различают три разновидности команд передачи управления: - переходы; - вызовы подпрограмм; - возвраты из подпрограмм. Команды переходов помещают в программный счетчик содержимое своего адресного поля — адрес перехода. При этом старое значение программного счетчика теряется. В микро-ЭВМ часто для экономии длины адресного поля команд условных переходов адрес перехода формируется как сумма текущего значения программного счетчика и относительно короткого знакового смещения, размещаемого в команде. В крайнем случае, в командах условных переходов можно и вовсе обойтись без адресной части — при выполнении условия команда "перепрыгивает" через следующую команду, которой обычно является безусловный переход. 2. Команда вызова подпрограмм работает подобно команде безусловного перехода, но старое значение программного счетчика предварительно сохраняется в специальном регистре или в стеке. Команда возврата передает содержимое верхушки стека или специального регистра в программный счетчик. Команды вызова и возврата работают "в паре". Подпрограмма, вызываемая командой вызова, должна заканчиваться командой возврата, что обеспечивает по окончании работы подпрограммы передачу управления в точку вызова. Хранение адресов возврата в стеке обеспечивает возможность реализации вложенных подпрограмм. 3. Системные— команды, выполняющие управление процессом обработки информации и внутренними ресурсами процессора. К таким командам относятся: - команды управления подсистемой прерывания; - команда загрузки PSW – Program Status Word (слово состояния программы); - команды установки флагов в регистре состояния процессора; - команды установки и изменения параметров защиты памяти; - команда останова программы; - и некоторые другие команды, например команда диагностики работы. В простых процессорах класс системных команд немногочисленный, а в сложных мультипрограммных системах предусматривается большое число системных команд.
Задания для выполнения:
1. Ознакомиться с теоретическими сведениями о командах управления модельной ЭВМ. 2. Запустите программу CompModel.exe. 3. Выполнить пример. В качестве примера рассмотрим программу вычисления функции:
Причем х вводится с устройства ввода IR, результат у выводится на OR. Граф-схема алгоритма решения задачи показана на рис.1.
В данном примере используются двухсловные команды с непосредственной адресацией, позволяющие оперировать отрицательными числами и числами по модулю, превышающие 999, в качестве непосредственного операнда. Оценив размер программы примерно в 20—25 команд, отведем для области данных ячейки ОЗУ, начиная с адреса 030. Составленная программа с комментариями представлена в виде табл. 1. Таблица 1.Пример программы
4. Разработать программу вычисления и вывода значения функции:
4.1 Для вводимого из IR значения аргумента х. Функции и допустимые пределы изменения аргумента приведены в табл. 2, варианты заданий — в табл. 3. 4.2. Исходя из допустимых пределов изменения аргумента функций (табл. 2) и значения параметра а для своего варианта задания (табл. 3) выделить на числовой оси Ох области, в которых функция у вычисляется по представленной в п. 1 формуле, и недопустимые значения аргумента. На недопустимых значениях аргумента программа должна выдавать на OR максимальное отрицательное число: 199 999. 4.3. Ввести текст программы в окно Текст программы,при этом возможен набор и редактирование текста непосредственно в окне Текст программыили загрузка текста из файла, подготовленного в другом редакторе. 4.4. Ассемблировать текст программы, при необходимости исправить синтаксические ошибки. 4.5. Отладить программу. Для этого: а) записать в IR значение аргумента х > а (в области допустимых значений); б) записать в PC стартовый адрес программы; в) проверить правильность выполнения программы (т. е. правильность результата и адреса останова) в автоматическом режиме. В случае наличия ошибки выполнить пп. 4.5г и 4.5д; иначе перейти к п. 4.5е; г) записать в PC стартовый адрес программы; д) наблюдая выполнение программы в режиме Шаг, найти команду, являющуюся причиной ошибки; исправить ее; выполнить пп. 4.5, a— 4.5, в; е) записать в IR значение аргумента х < а (в области допустимых значений); выполнить пп. 4.5би 4.5в; ж) записать в IR недопустимое значение аргумента х и выполнить пп. 4.5би 4.5в. 6. Для выбранного допустимого значения аргумента х наблюдать выполнение отлаженной программы в режиме Шаг и записать в форме табл. 4 содержимое регистров ЭВМ перед выполнением каждой команды. Таблица 2. Функции Таблица 3. Варианты задания
Таблица 4. Результаты выполнения программы
Содержание отчета Отчет о практическая работе должен содержать следующие разделы: 1. Формулировка варианта задания. 2. Граф-схема алгоритма решения задачи. 3. Размещение данных в ОЗУ. 4. Программа в форме табл. 1. 5. Последовательность состояний регистров ЭВМ при выполнении программы в режиме Шаг для одного значения аргумента. 6. Результаты выполнения программы для нескольких значений аргумента, выбранных самостоятельно.
Популярное: Как выбрать специалиста по управлению гостиницей: Понятно, что управление гостиницей невозможно без специальных знаний. Соответственно, важна квалификация... Личность ребенка как объект и субъект в образовательной технологии: В настоящее время в России идет становление новой системы образования, ориентированного на вхождение... Модели организации как закрытой, открытой, частично открытой системы: Закрытая система имеет жесткие фиксированные границы, ее действия относительно независимы... ©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (2510)
|
Почему 1285321 студент выбрали МегаОбучалку... Система поиска информации Мобильная версия сайта Удобная навигация Нет шокирующей рекламы |