Структурная схема МП-системы главного окна программы

Лабораторная работа № 3

Работа с программами и данными в машинном представлении.

 

 

Цель работы

В соответствии с рабочей программой по дисциплине «Системное программирование» в результате выполнения заданий по лабораторным работам студент должен:

уметь:

- осуществлять разработку кода программного модуля на современных языках программирования;

- создавать программу по разработанному алгоритму как отдельный модуль;

- выполнять отладку и тестирование программы на уровне модуля;

знать:

- основные принципы технологии структурного и объектно-ориентированного программирования;

- основные принципы отладки и тестирования программных продуктов.

Таким образом, студент во время проведения занятия и самостоятельной работы по теме занятия должен:

- освоить способы записи программ в машинных кодах, перевода ассемблерной программы в машинный код;

- приобрести навыки ввода, отладки и выполнения программ;

- закрепить теоретические знания об архитектуре и ресурсах микропроцессоров.

 

Краткие сведения из теории

Лабораторная работа выполняется в эмуляторе процессора КР580.

Главное меню программы

Рис. 1-Главное окно программы

 

Главное меню программы расположено в верхней части главного окна программы под его заголовком, как показано на рисунке 1 п.1, и содержит следующие пункты:

  • Меню "Файл"
  • Меню "МП-система"
  • Меню "Вид"
  • Меню "Настройки"
  • Меню "Помощь"

Структурная схема МП-системы главного окна программы

Структурная схема МП-системы расположена в центральной части главного окна программы, как показано на рисунке 1 п.2, и содержит следующие элементы:

  • Регистр слова состояния микропроцессора (PSW) МП-системы и его значение, представленное в двоичной системе счисления, а также, расшифровку этого значения, представленного в словесной форме;
  • Буфер данных МП-системы и его значение, представленное в шестнадцатеричной системе счисления;
  • Регистр-аккумулятор (А) МП-системы и его значение, представленное в шестнадцатеричной системе счисления;
  • Буферные регистры МП-системы 1 и 2 и их значения, представленные в шестнадцатеричной системе счисления;
  • Регистр признаков (флагов) МП-системы и его значение, представленное в двоичной системе счисления, а также, индикаторы расшифровки флагов: Z, S, P, C, AC;
  • Регистр команд МП-системы и его значение, представленное в шестнадцатеричной системе счисления;
  • Дешифратор команд МП-системы, индицирующий мнемонику текущей выполняемой команды, закреплённой на регистре команд;
  • Счётчики машинных микроциклов и микротактов МП-системы, индицирующие свои текущие значения в десятичной системе счисления;
  • Блок АЛУ МП-системы;
  • Блок десятичной коррекции значения регистра-аккумулятора МП-системы;
  • Блок синхронизации и управления МП-системой;
  • Буфер адреса МП-системы и его значение, представленное в шестнадцатеричной системе счисления;
  • Блок регистров общего назначения МП-системы и их значения, представленные в шестнадцатеричной системе счисления. Регистры B, C, D, E, H, L;
  • Блок регистров временного хранения МП-системы и их значения, представленные в шестнадцатеричной системе счисления. Регистры W, Z;
  • Схема инкремента/декремента МП-системы, индицирующее своё соответствующее действие условными обозначениями «+1» и «-1» соответственно;
  • Регистр-указатель стека МП-системы и его значение, представленное в шестнадцатеричной системе счисления;
  • Регистр-счётчик команд МП-системы и его значение, представленное в шестнадцатеричной системе счисления;
  • Контролер ввода/вывода МП-системы;
  • Индикаторы состояния и тактирования микропроцессора МП-системы: F1, F2, SYNC, READY, WAIT, HOLD, HLDA, INT, INTE, DBIN, WR;
  • Порты МП-системы от 00h до 04h для монитора, дисковода, жёсткого диска, сетевого адаптера и принтера соответственно;
  • Все элементы связаны между собой шинами: данных, адреса, управления, внутренней шиной данных и шиной внешних устройств (портов) в соответствии со структурной схемой (см. рис. 1).

Следующие элементы структурной схемы носят активных характер, позволяющий, при помощи щелчка мыши на их значении, отобразить и редактировать последнее в панели редактирования значений регистров (см. рис. 1, п.6):

  • Аккумулятор;
  • Регистры блока РОН: B, C, D, E, H, L;
  • Регистры временного хранения: W, Z;
  • Указатель стека;
  • Счётчик команд.

Таблица содержимого ОЗУ МП-системы

ОЗУ МП-системы представлено в виде блока (рис. 1, п.3) с таблицей к которому схематично подведены шины управления, адреса и данных. Таблица условно разделена на 3 столбца:

  • Столбец адреса ОЗУ - каждый адрес ячейки ОЗУ представлен в шестнадцатеричном виде и лежит в диапазоне от 0000h до FFFFh (0d…65535d), соответствуя тем самым максимально доступной адресации памяти для МП КР580ВМ80А (64КБ);
  • Столбец значения ОЗУ - текущее значение, соответствующее данному адресу ОЗУ. Представлено в шестнадцатеричном виде и лежит в диапазоне от 00h до FFh (0d…255d);
  • Столбец команды - расшифровка соответствующего значения ячейки ОЗУ МП-системы, лежащего по соответствующему адресу. Представлено в виде мнемокода на языке ассемблера. Однако стоит подразумевать, что не всегда мнемокод напрямую связан со значением соответствующей ячейки, ввиду того, что предыдущая команда может быть, к примеру, двухбайтной, а стало быть, в данной ячейке подразумеваются данные от предыдущей команды, не имеющие никакого отношения к представленному мнемокоду.

При выборе строки этой таблицы (текущей ячейки) при помощи мыши или клавиатурных стрелок «↑» и «↓», изменяется значение номера выбранной ячейки на единицу соответственно, которое отражается в поле редактирования значения ячейки ОЗУ (см. рис. 1, п.5), а также это выделение визуально отражает значение счётчика команд (PC) МП-системы;

В нижней (обычно) области таблицы содержимого ОЗУ установлено выделение коричневого цвета на ту ячейку ОЗУ, на которую указывает указатель стека (SP) МП-системы. Все нижестоящие ячейки (у которых адрес старше) окрашены жёлтым цветом, символизируя тем самым, стековую область ОЗУ. Фрагмент таблицы содержимого ОЗУ, случая, когда значение регистра-указателя стека равно FFFAh показан на рисунке ниже.