- •Лабораторная работа n1. Изучение программно-аппаратных средств разработки и отладки систем на базе mc68000. Введение
- •Теоретическая часть
- •1. Программная модель мп мс68000
- •1.1 Внутренние регистры
- •Регистры данных Dn
- •Регистры адреса
- •Программный счетчик рс (Program Counter)
- •Регистр состояния sr (Status Register)
- •1.2. Форматы данных и размещение данных в памяти Форматы данных
- •Форматы команд
- •2. Структура и возможности учебного одноплатного компьютера sbc68k
- •Структура организации памяти модуля sbc68k
- •Каналы последовательного обмена.
- •Порты параллельного ввода/вывода.
- •Программируемые таймеры/счетчики.
- •Контроллер дисковода.
- •3. Встроенный монитор (отладчик)
- •Инициализация системы.
- •Символы управления терминалом.
- •Формат командной строки.
- •Выражение в качестве параметра.
- •Адрес в качестве параметра.
- •Сообщения монитора при выполнении команд.
- •Система команд монитора
- •Заполнение блока памяти (Block of memory Fill)
- •Перемещение блока (Block Move)
- •Ввод точек останова (bReakpoint)
- •Поиск ячеек памяти (Block of memory Search)
- •Преобразование данных (Data Conversion)
- •Отображение состояния регистров процессора.
- •Выполнение программы в реальном времени (go)
- •Непосредственное выполнение программы.
- •Выполнение программы до точки останова (Go unTil breakpoint)
- •Вывод справочной информации (hElp)
- •Загрузка программы в память модуля (lOad)
- •Отображение содержимого памяти (Memory Display)
- •Изменение содержимого памяти (Memory Modify)
- •Запись блока данных в память (Memory Set)
- •Удаление точек останова (nobReakpoint)
- •Отображение/изменение содержимого определенного регистра.
- •"Прозрачный" режим работы последовательных портов (Transparent Mode)
- •Трассировка (tRace)
- •Трассировка до текущей точки останова (Trace to Temporary breakpint)
- •3. Встроенный ассемблер/реассемблер.
- •Язык ассемблера mc68000.
- •Мнемонические обозначения и специальные символы
- •Список символов
- •Директива определения константы dc.W (Define Constant.Word)
- •4. Работа с сервером
- •Запуск и работа ассемблера.
- •Кросс-ассемблер. Формат записи программы.
- •Поле метки
- •Операторы в выражениях.
- •Определение методов адресации.
- •Особенности записи в ассемблере некоторых команд Команды переходов.
- •Команда movem.
- •Команды быстрых вычислений (moveq, addq, subq).
- •Директивы ассемблера. Org Установка начального адреса.
- •Equ Определение имени.
- •Set Установка имени.
- •Reg Определение набора регистров.
- •Dc Определение константы.
- •44 43 20 45 78 61 6D 70 6c 65 0d 0a 00 (в шестнадцатиричном виде). Dbc Определение блока констант.
- •Ds Резервирование памяти.
- •End Конец транслируемого файла.
- •Формат s-Record
- •Содержимое записи s-record.
- •Типы записей s-record.
- •Практическая часть
- •1. Ввод исходных данных и анализ результатов работы программы с помощью команд просмотра и модификации памяти и регистров.
- •2. Ввод программы с помощью встроенного ассемблера
- •3. Режимы выполнения программы
- •4. Подготовка, ассемблирование и загрузка программы с помощью программных средств сервера.
Непосредственное выполнение программы.
GD [<адрес>]
Команда GD аналогична команде GO, за исключением того, что она не устанавливает точки останова и не запускается командой одиночной трассировки. Команда GD начинает выполнение программы с ячейки памяти, определенной в параметре <адрес>, без изменения содержимого таблицы векторов процессора (ячеки $0-$3FF). Если адрес не указывается, выполнение программы начинается с адреса, содержащегося в счетчике команд PC.
Смотри также команды: GO, GT.
Выполнение программы до точки останова (Go unTil breakpoint)
GT <адрес точки останова>
Команда GT выполняет следующие действия:
1 устанавливает текущую точку останова;
2 устанавливает точки останова введенные командой BR;
3 устанавливает программные регистры так, как индицирует команда DF;
4 производит запуск программы (в режиме реального времени) начиная с адреса, указанного в программном счетчике PC.
Смотри также команды: BR, DF, GD, GO, TR, TT.
Вывод справочной информации (hElp)
HE
Данная команда отображает на дисплее список всех команд монитора TUTOR.
Загрузка программы в память модуля (lOad)
LO [<номер порта>] [;<опции>] [=текст]
С помощью команды LO производится загрузка в память данных с центрального компьютера в формате S-record. Команда LO имеет следующие опции:
;-C Игнорирование контрольной суммы при загрузке. Если эта опция не используется, подсчитанная контрольная сумма сравнивается с помещенной в записи S-record, и, если они совпадают, через Порт 1 выводится сообщение: "CHKSUM=" и значение контрольной суммы; данные не загружаются в память, если контрольные суммы не совпадают.
;X Повторное чтение данных из выбранного устройства.
Параметр [=текст] используется только при работе с Портом 2. Текст, следующий за символом "=", посылается в Порт 2. Например, сообщение может быть послано в Порт 2 для инициализации начала загрузки.
Если Центральная ЭВМ, подключенная к Порту 2 не выдает ответ примерно через 10с после ввода команды, то через Порт 1 выводится сообщение "TIMEOUT" и выполнение команды прерывается.
Смотри также команды: DU, OF, PF, VE и раздел "Работа с сервером".
Отображение содержимого памяти (Memory Display)
MD [<номер порта>] <адрес> [<количество>] [;<опции>]
Команда MD используется для отображения области памяти начиная с ячейки, указанной в параметре <адрес>. Параметр <количество> определяет число байт памяти выводимых на дисплей. Команда может работать в двух режимах: отображение шестнадцатеричных данных (с выводом ASCII эквивалента) и отображение в реассемблируемой форме.
Команда имеет четыре основных формы:
-
Команда
Ïîðò N
Устройство вывода
MD
Ïîðò 1
Терминал
MD1
Ïîðò 1
Терминал
MD2
Ïîðò 2
Центральная ЭВМ (модем)
MD3
Ïîðò 3
Принтер
По умолчанию значение <количество> равно 16 байт или одной команде при использовании режима реассемблера.
Команда может работать в двух режимах:
1. Без опции - отображение данных в шестнадцатеричном виде с ASCII эквивалентом. Данные всегда отображаются группами по 16 байт. Если значение параметра <количество> не кратно 16, то выводится ближайшее большее значение, за исключением случая, когда <количество> на 1 больше кратного шестнадцати значения.
2. Опция ;DI приводит к режиму реассемблирования. Данные выводятся в формате, описанном в главе 3. В каждой строке отображается адрес команды, ее шестнадцатеричный код, мнемоника и операнды. Количество выводимых команд процессора определяется количеством байтов соответствующих им машинных кодов, которое указывается в параметре <количество>.
Смотри также команды: MM, MS.