Записать приведенную ниже программу напрямую в ОЗУ, после чего пошагово произвести ее трассировку, отследить происходящие изменения и интерпретировать их в соответствии с исполняемым кодом.
В соответствии с приведенным кодом выполним следующие действия:
- В регистр IR занесем число 000016
- В ОЗУ ЭВМ, начиная с ячейки 000, занесем следующие значения, соответствующие машинным кодам исполняемой программы:
- По результатам работы программы получили:
IN – перенести значение с регистра IR на регистр Acc
WR 8 – записать содержимое Acc в 008 ячейку ОЗУ
DIV #4 – разделить содержимое Acc на число 4, причем Acc примет значение 16/4=4, в регистр DR запишется число 4
JMP 002 – перейти на выполнение команды во 2-й ячейке ОЗУ (зацикливание)
DIV #4 – разделить содержимое Acc на число 4, причем Acc примет значение 4/4=, в регистр DR запишется число 4
Формат команд микропроцессора. Машинные циклы
JMP 002 – перейти на выполнение команды во 2-й ячейке ОЗУ (зацикливание)
DIV #4 – разделить содержимое Acc на число 4, причем Acc примет значение 1/4=, в регистр DR запишется число 0. Флаг Z примет значение 1.
JMP 002 – перейти на выполнение команды во 2-й ячейке ОЗУ (зацикливание)
Во время выполнения программы регистры MDR https://vunivere.ru/work3723″ target=»_blank»]vunivere.ru[/mask_link]
Жмакин А.П. Архитектура ЭВМ (2006), страница 39
Документ из архива «Жмакин А.П. Архитектура ЭВМ (2006)», который расположен в категории » «. Всё это находится в предмете «техника и элементная база средств цифровой обработки сигналов (тэбс цос)» из 11 семестр (3 семестр магистратуры), которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. .
Онлайн просмотр документа «Жмакин А.П. Архитектура ЭВМ (2006)»
Текст 39 страницы из документа «Жмакин А.П. Архитектура ЭВМ (2006)»
ГЛАВА 9 Лабораторные работы Цикл лабораторных работ рассчитан на выполнение студентами в рамках курса «Архитектура ЭВМ» и других, подобных по содержанию. Цикл включает работы различного уровня.
Лабораторные работы № 1—4 ориентированны на первичное знакомство с архитектурой процессора, системой команд, способами адресации и основными приемами программирования на машинно-ориентированном языке. Лабораторная работа № 5 иллюстрирует реализацию командного цикла процессора на уровне микроопераций.
Как на самом деле работает двоичный код?
Лабораторная работа № 6 посвящена способам организации связи процессора с внешними устройствами, а в лабораторных работах № 7 и 8 рассматривается организация кэш-памяти и эффективность различных алгоритмов замещения. Все работы выполняются на программной модели учебной ЭВМ и взаимодействующих с ней в программных моделях ВУ и кэш-памяти, описанных в главе 8. Описание работы включает постановку задачи, пример выполнения, набор вариантов индивидуальных заданий, порядок выполнения работы, требования к содержанию отчета и контрольные вопросы.
9.1. Лабораторная работа № 1. Архитектура ЭВМ и система команд 9.1.1. Общие положения Для решения с помощью ЭВМ некоторой задачи должна быть разработана программа. Программа на языке ЭВМ представляет собой последовательность команд. Код каждой команды определяет выполняемую операцию, тип адресации и адрес.
Выполнение программы, записанной в памяти ЭИМ, t ществляется последовательно по командам в порядке возрастания ади команд или в порядке, определяемом командами передачи управления. , Для того чтобы получить результат выполнения программы, пользоЦИ должен: □ ввести программу в память ЭВМ; □ определить, если это необходимо, содержимое ячеек ОЗУ и РОИ, оЩ жащих исходные данные, а также регистров IR и BR; □ установить в PC стартовый адрес программы; П перевести модель в режим Работа. Каждое из этих действий выполняется посредством интерфейса модели, | санного в главе 8.
Ввод программы может осуществляться как в маши кодах непосредственно в память модели, так и в мнемокодах в окно программы с последующим ассемблированием. Цель настоящей лабораторной работы — знакомство с интерфейсом ЭВМ, методами ввода и отладки программы, действиями основных команд и способов адресации.
Для этого необходимо ввести в память выполнить в режиме Шаг некоторую последовательность команд (о ленную вариантом задания) и зафиксировать все изменения на уронi к граммно-доступных объектов ЭВМ, происходящие при выполнении команд. Команды в память учебной ЭВМ вводятся в виде шестиразрядных д ных чисел (см. форматы команд на рис. 8.3, коды команд и способов ции в табл. 8.2—8.4).
В настоящей лабораторной работе будем программировать ЭВМ в маш кодах. 9.1.2.
Пример 1 Дана последовательность мнемокодов, которую необходимо преобразо машинные коды, занести в ОЗУ ЭВМ, выполнить в режиме Шаг и заф ровать изменение состояний программно-доступных объектов ЭВМ (табл.9.1) Введем полученные коды последовательно в ячейки ОЗУ, начиная с адреса 000. Выполняя команды в режиме Шаг, будем фиксировать изменения программно-доступных объектов (в данном случае это Асе, PC и ячейки ОЗУ 020 и 030) в табл.
9.2. 9.1.3. Задание 1 1. Ознакомиться с архитектурой ЭВМ (см. часть I). 2. Записать в ОЗУ «программу», состоящую из пяти команд— варианты задания выбрать из табл.
9.3. Команды разместить в последовательных ячейках памяти. 3. При необходимости установить начальное значение в устройство ввода IR. 4. Определить те программно-доступные объекты ЭВМ, которые будут изменяться при выполнении этих команд. 5. Выполнить в режиме Шаг введенную последовательность команд, фиксируя изменения значений объектов, определенных в п. 4, в таблице (см. форму табл.
9.2). 6. Если в программе образуется цикл, необходимо просмотреть не более двух повторений каждой команды, входящей в тело цикла.

2. Машинные коды команд, соответствующих варианту задания. 3. Результаты выполнения последовательности команд в форме табл. 9.2, 9.1.5. Контрольные вопросы 1. Из каких основных частей состоит ЭВМ и какие из них предали i в модели? 2. Что такое система команд ЭВМ? 3. Какие классы команд представлены в модели?
4. Какие действия выполняют команды передачи управления? 5. Какие способы адресации использованы в модели ЭВМ? В чем отлИ| между ними? 6. Какие ограничения накладываются на способ представления длины) модели ЭВМ? 7. Какие режимы работы предусмотрены в модели и в чем отличив ними?» 8. Как записать программу в машинных кодах в память модели ЭВМ?
9. Как просмотреть содержимое регистров процессора и изменить со* мое некоторых регистров? 10. Как просмотреть и, при необходимости, отредактировать соде» ячейки памяти? 11. Как запустить выполнение программы в режиме приостановки работы после выполнения каждой команды?
12. Какие способы адресации операндов применяются в командах ЭВМ? 13. Какие команды относятся к классу передачи управления? 9.2. Лабораторная работа № 2. Программирование разветвляющегося процесса Для реализации алгоритмов, пути в которых зависят от исходных данны> используют команды условной передачи управления.
9.2.1. Пример 2 В качестве примера (несколько упрощенного по сравнению с заданиями л бораторной работы № 2) рассмотрим программу вычисления функции причем х вводится с устройства ввода IR, результат у выводится на OR. Граф-схема алгоритма решения задачи показана на рис. 9.1.
В данной лабораторной работе используются двухсловные команды с непосредственной адресацией, позволяющие оперировать отрицательными числами и числами по модулю, превышающие 999, в качестве непосредственного операнда. Оценив размер программы примерно в 20—25 команд, отведем для области данных ячейки ОЗУ, начиная с адреса 030.
Составленная программа с комментариями представлена в виде табл. 9.4.
9.2.2.
Задание 2 1. Разработать программу вычисления и вывода значения функции: для вводимого из IR значения аргумента х. Функции и допустимые пределы изменения аргумента приведены в табл. 9.5, варианты заданий — в табл. 9.6. 2. Исходя из допустимых пределов изменения аргумента функций (табл.
9.5) и значения параметра а для своего варианта задания (табл. 9.6) выделить на числовой оси Ох области, в которых функция у вычисляется по представленной в п. 1 формуле, и недопустимые значения аргумента. На недопустимых значениях аргумента программа должна выдавать на OR максимальное отрицательное число: 199 999.
3. Ввести текст программы в окно Текст программы, при этом возможен набор и редактирование текста непосредственно в окне Текст программы или загрузка текста из файла, подготовленного в другом редакторе. 4. Ассемблировать текст программы, при необходимости исправить синтаксические ошибки. 5. Отладить программу.
Для этого: а) записать в IR значение аргумента х > а (в области допустимых значений); б) записать в PC стартовый адрес программы; в) проверить правильность выполнения программы (т. е. правильность результата и адреса останова) в автоматическом режиме. В случае наличия ошибки выполнить пп.
5, г и 5, д; иначе перейти к п. 5, е; г) записать в PC стартовый адрес программы; д) наблюдая выполнение программы в режиме Шаг, найти команду, являющуюся причиной ошибки; исправить ее; выполнить пп. 5, a — 5, в; е) записать в IR значение аргумента х < а (в области допустимых значений); выполнить пп.
5, б и 5, в; ж) записать в IR недопустимое значение аргумента х и выполнить пп. 5, б и 5, е. 6. Для выбранного допустимого значения аргумента х наблюдать выполнение отлаженной программы в режиме Шаг и записать в форме табл. 9.2 содержимое регистров ЭВМ перед выполнением каждой команды. 9.2.3.
Содержание отчета Отчет о лабораторной работе должен содержать следующие разделы: 1. Формулировка варианта задания. 2. Граф-схема алгоритма решения задачи. 3. Размещение данных в ОЗУ. 4. Программа в форме табл. 9.4.
5. Последовательность состояний регистров ЭВМ при выполнении программы в режиме Шаг для одного значения аргумента. 6. Результаты выполнения программы для нескольких значений аргумента, выбранных самостоятельно. 9.2.4. Контрольные вопросы 1. Как работает механизм косвенной адресации?
2. Какая ячейка будет адресована в команде с косвенной адресацией через ячейку 043, если содержимое этой ячейки равно 102 347? 3. Как работают команды передачи управления? 4. Что входит в понятие «отладка программы»? 5. Какие способы отладки программы можно реализовать в модели? 9.3.
Лабораторная работа № 3. Программирование цикла с переадресацией При решении задач, связанных с обработкой массивов, возникает необходимость изменения исполнительного адреса при повторном выполнении некоторых команд. Эта задача может быть решена путем использования косвенной адресации. 9.3.1.
ПримерЗ Разработать программу вычисления суммы элементов массива чисел С С2, С„. Исходными данными в этой задаче являются: п — количеств суммируемых чисел и С,, С2. С„ — массив суммируемых чисел. Заметем, что должно выполняться условие п > 1, т. к. алгоритм предусматривает по крайней мере, одно суммирование.
Кроме того, предполагается, что суммируемые числа записаны в ОЗУ подряд, т. е. в ячейки памяти с последовательными адресами. Результатом является сумма S. Составим программу для вычисления суммы со следующими конкретными параметрами: число элементов массива— 10, элементы массива расположены в ячейках ОЗУ по адресам 040, 041, 042,049.
Используемые для решения задачи промежуточные переменные имеют следующий смысл: Л, — адрес числа С,, i е ; ОЗУ(Л,) — число по адресу A,, S — текущая сумма; к — счетчик цикла, определяющий число повторений тела цикла. Распределение памяти таково.
Программу разместим в ячейках ОЗУ, начиная с адреса 000, примерная оценка объема программы — 20 команд; промежуточные переменные: At — в ячейке ОЗУ с адресом 030, к — по адресу 031, S — по адресу 032. ГСА программы показана на рис. 9.2, текст программы с комментариями приведен в табл. 9.7.
Источник: studizba.com
2.2. Вспомогательные таблицы
В данном разделе представлены вспомогательные таблицы (табл. 6—8) для работы с моделью учебной ЭВМ.
Таблица 6. Типы адресации, их коды и обозначение
Таблица 7. Таблица кодов ASCII (фрагмент)
Таблица 8. Перевод шестнадцатиричных кодов в десятичные
3. Порядок работы с моделью учебной эвм
Для решения с помощью ЭВМ некоторой задачи должна быть разработана программа. Программа на языке ЭВМ представляет собой последовательность команд. Код каждой команды определяет выполняемую операцию, тип адресации и адрес. Выполнение программы, записанной в памяти ЭВМ, осуществляется последовательно по командам в порядке возрастания адресов команд или в порядке, определяемом командами передачи управления.
Для того чтобы получить результат выполнения программы, пользователь должен:
- ввести программу в память ЭВМ;
- определить, если это необходимо, содержимое ячеек ОЗУ и РОН, содержащих исходные данные, а также регистров IR и BR;
- установить в PC стартовый адрес программы;
- перевести модель в режим Работа.
Аппаратные средства информационных технологий Практическая работа № 2. Архитектура эвм и система команд
Цель работы: 1. Знакомство с архитектурой модели учебной ЭВМ. 2. Освоение программы реализующей модель учебной ЭВМ. 3. Изучение системы команд модельной ЭВМ. 4. Изучение процесса программирования на модели учебной ЭВМ. Теоретические сведения:
Классическая архитектура эвм
Источник: studfile.net