
- •Лабораторная работа 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. Подготовка, ассемблирование и загрузка программы с помощью программных средств сервера.
Перемещение блока (Block Move)
BM <адрес 1> <адрес 2> <адрес 3>
Команда BM предназначена для перемещения (копирования) блока данных из одной области памяти в другую.
<адрес 1> = начальный адрес источника блока данных
<адрес 2> = конечный адрес источника блока данных
<адрес 3> = начальный адрес приемника блока данных
Ввод точек останова (bReakpoint)
BR [<адрес>[;<отсчет>]]...
После того, как в выполняемой программе встречается точка останова, ее выполнение завершается и управление передается монитору. Команда BR устанавливает один или более адресов в таблице точек останова. Всего в таблице может быть записано до 8 точек. Все точки останова могут быть установлены одним вызовом команды BR. Адрес указываемый в команде BR должен быть четным.
Число записанное в параметре <отсчет> уменьшается на 1 всякий раз при встрече точки останова. Останов выполнения программы происходит после того, как содержимое <отсчета> переходит в 0. После этого останов будет производится всякий раз после встречи данной точки. Диапазон параметра <отсчет> представлен 32-разрядной целой величиной.
Команду BR можно использовать в нескольких форматах:
BR отобразить все точки останова.
BR адрес установить точку останова.
BR адрес;отсчет установить точку останова с отсчетом.
Для отмены одной или нескольких точек останова используется команда NOBR.
Смотри также команды: GT, NOBR, TT
Поиск ячеек памяти (Block of memory Search)
BS <адрес 1> <адрес 2> 'символьная строка'
BS <адрес 1> <адрес 2> <данные> [<маска>] [;<опции>]
Команда BS может использоваться в двух режимах: поиск по символьным данным и поиск по числовым данным. Оба режима производят тестирование области памяти начиная с <адреса 1> до <адресом 2>, при этом в данной области памяти производится последовательное сравнение хранящихся в ней данных с искомыми. Результатом выполнения команды является список адресов, по которым хранятся искомые данные.
Активизация режима поиска по символьным данным производится, если после поля <адрес 2> следует апостроф ('). В случае поиска по числовым данным в поле <маска> может указываться число, которым будут маскироваться тестируемые данные перед сравнением с искомыми. В поле <опция> указывается формат искомых данных:
;B áàéò
;W слово
;L длинное слово
По умолчанию автоматически выбирается байт.
Преобразование данных (Data Conversion)
DC <выражение>
Команда DC преобразует значение выражения к шестнадцатеричной и десятичной величине. Выражение может быть записано в шестнадцатеричном, десятичном и смешанном формате. По умолчанию формат выражения шестнадцатеричный.
В команде могут использоваться регистры смещения. Если не указаны другие регистры смещения, то к выражению добавляется смещение R0.
Отображение состояния регистров процессора.
DF
Команда DF используется для отображения содержимого всех внутренних регистров процессора MC68000.
Заметим, что содержимое единичных регистров может быть отображено посредством команды .Rx.
Примечание. Кроме вывода содержимого регистров, команда DF также дизассемблирует команду, которая записана по текущему значению счетчика команд PC.
Смотри также команды: .Rx.
Выполнение программы в реальном времени (go)
GO [<адрес>]
G[<адрес>]
Выполнение команды GO приводит к выполнению программы в режиме реального времени, начиная с <адреса> или, если он не указан, с текущего положения программного счетчика РС. Выполнение продолжается до тех пор, пока не произойдет одно из следующих условий:
а. встречается точка останова;
б. встречается некорректная команда или последовательность команд (например, деление на 0);
в. производится сброс системы, путем нажатия клавиш RESET или ABORT.
Примечание.Если используются точки останова с отсчетом, то режим реального времени нарушается.
Смотри также команды: BR, DF, GD, GT, TR, TT.