
- •Лабораторная работа 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. Подготовка, ассемблирование и загрузка программы с помощью программных средств сервера.
Изменение содержимого памяти (Memory Modify)
MM <адрес> [;<опции>]
M <адрес> [;<опции>]
Команда MM используется для отображения содержимого ячеек памяти и, если необходимо, его изменения. Команда имеет две основных формы:
а. Шестнадцатеричный формат. Стандартная форма команды MM, отображающая адрес ячейки памяти и ее содержимое. Параметр <опция> управляет количеством байт, выводимых на каждый адрес:
-
Опция
Описание
-
отображается один байт (по умолчанию)
;W
отображается одно слово (два байта)
;L
отображается одно длинное слово (четыре байта)
;O
отображается один байт; доступ только к нечетным байтам
;V
отображается один байт; доступ только к четным байтам
;N
опция запрета чтения содержимого открываемой ячейки
Команда MM имеет также несколько подрежимов работы, которые позволяют модифицировать порядок вывода на дисплей ячеек памяти. Подрежимы имеют следующий формат:
[<новые данные>](RETURN) [запись новых данных и] доступ к следующей ячейке
[<новые данные>]^(RETURN) [запись новых данных и] доступ к предыдущей ячейке
[<новые данные>]=(RETURN) [запись новых данных и] доступ к той же самой ячейке
[<новые данные>].(RETURN) [запись новых данных и] завершение работы команды.
б. Опция ;DI. Позволяет использовать функции ассемблера/реассемблера. Адрес, указываемый в команде MM, должен быть начальным адресом машинного кода команды процессора. При этом команда будет отражена в реассемблируемой форме. Формат строки реассемблера описан в главе 3.
После очередной реассемблируемой команды следует символ "?", указывающий на то, что может быть введена новая команда. Если вводится новая команда, она ассемблируется, сохраняется в памяти и отображается на дисплее. При вводе новой команды используется следующий формат:
? <sp> <поле команды> <sp> <поле операндов> <RETURN>
ãäå:
sp пробел
поле команды мнемоника команды 68000 или директива DC.W
поле операндов обычно поля источника и приемника операндов
RETURN ввод команды - нажатие на клавишу RETURN
После ввода новой команды автоматически производится реассемблирование следующей команды. Для выхода из данного режима, после символа "?" записывается точка "." и нажимается RETURN.
Если новая команда введена с ошибкой, на дисплее появляется сообщение "X?", после которого пользователь может повторить ввод команды.
Смотри также команды: MD, MS.
Запись блока данных в память (Memory Set)
MS <адрес> <данные...>
Команда MS последовательно размещает в памяти <данные...> начиная с ячейки указанной в параметре <адрес>. Данные могут быть представлены в виде строки символов в ASCII формате (строка должна быть заключена в апострофы) или цифровом шестнадцатеричном виде. Всего может быть несколько строк, однако размер строки ограничен восемью символами.
Смотри также команды: MD, MM.
Удаление точек останова (nobReakpoint)
NOBR [<адрес> <адрес>...]
Данная команда используется для удаления одной или нескольких точек останова из таблицы адресов точек останова и является отрицательной формой команды BR.
Смотри также команды: BR, GT, TT.