- •Введение
- •1. Краткие теоретические сведения по ассемблеру мп к1801вм1
- •1.1. Регистровая модель
- •1.2. Адресное пространство
- •1.3. Методы адресации
- •1.3.1. Методы прямой адресации
- •1.3.2. Методы косвенной адресации
- •1.3.3. Методы адресации, использующие в качестве рон r7
- •2. Алгоритмы сортировки
- •2.1. Оценка алгоритма сортировки
- •2.2. Классификация алгоритмов сортировки
- •2.3. Сортировка пузырьком
- •3. Определение четности чисел
- •3.1. Определение чисел кратных двум
- •3.2. Определение числа единиц в числе
- •4. Определение кратности любому числу
- •5. Определение модуля числа
- •6. Многословное умножение
- •Заключение
- •Приложения Приложение 1. Оформление отчета по курсовой работе
- •Результаты работы программы
- •Приложение 2. Список команд
- •Приложение 3. Эмулятор Ersatz-11
1.2. Адресное пространство
Шестнадцатиразрядный код адреса позволяет обращаться к 32К 16-разрядных ячеек. Нижние 4К адресов (1600008÷1777778) отведены под регистры внешних устройств. Однако пользователь не обязан использовать все адреса этого пространства исключительно для этой цели и может руководствоваться соображениями необходимости.
Как показано на рис. 3, слово делится на старший и младший байты. Ячейки, содержащие полные слова, всегда имеют четные адреса. Адреса байтов могут быть как четными, так и нечетными. Адрес младшего байта слова является четным и совпадет с адресом самого слова, адрес старшего байта слова является нечетным и на 1 больше адреса соответствующего слова (рис. 3). Адреса и данные принято записывать в 8-ричной системе исчисления (от 000000 до 177777). Организация памяти микропроцессора по словам и байтам для первых 4К адресов приведена на рис. 4.
|
||||||||||||
|
||||||||||||
Рис. 3. Формат слова микропроцессора |
Слово |
|
|
Байты |
||
байт |
байт |
|
|
|
|
Старший |
Младший |
000000 |
|
Младший |
000000 |
Старший |
Младший |
000002 |
|
Старший |
000001 |
Старший |
Младший |
000004 |
|
Младший |
000002 |
Старший |
Младший |
000006 |
|
Старший |
000003 |
Старший |
Младший |
000010 |
|
Младший |
000004 |
|
|
|
|
|
|
Старший |
Младший |
017772 |
|
Старший |
017775 |
Старший |
Младший |
017774 |
|
Младший |
017776 |
Старший |
Младший |
017776 |
|
Старший |
017777 |
Рис. 4. Организация памяти микропроцессора по словам и байтам для первых 4К адресов
Часть адресов зарезервирована для использования при обработке внутренних и внешних прерываний программы (адреса 0÷3768)
Пример:
1.3. Методы адресации
1.3.1. Методы прямой адресации
№ метода адресации |
Метод адресации |
0 |
Регистровый |
2 |
Автоинкрементный |
4 |
Автодекрементный |
6 |
Индексный |
Метод поиска операнда схематично изображен на рис. 5.
|
Рис. 5. Методы прямой адресации |
Прямая регистровая адресация (№0).
Правило: содержимое регистра, указанного в команде, используется как операнд. Байтовые команды всегда оперируют содержимым младшего байта регистра. При пересылке байта в регистр происходит расширение знака, при котором старший бит пересылаемого байта восемь раз копируется в старшем байте регистра-приемника.
Прямая автоинкрементная адресация (№2).
Правило: содержимое регистра, указанного в команде, используется как адрес операнда. Операнд извлекается, обрабатывается и возвращается по старому адресу. После извлечения операнда содержимое регистра увеличивается на 2 для словных команд и на 1 для байтных команд. Но если байтовая команда работает с R6 или с R7, то их содержимое всегда увеличивается на 2.
Прямая автодекрементная адресация (№4).
Правило: содержимое регистра, указанного в команде, вначале уменьшается на 2 для словных команд и на 1 для байтных команд и затем используется как адрес операнда. Операнд извлекается, обрабатывается и возвращается по старому адресу. Но если байтовая (байтная) команда работает с R6 или с R7, то их содержимое всегда уменьшается на 2.
Прямая индексная адресация (№6).
Правило: содержимое регистра, указанного в команде, вначале складывается с индексным словом, которое, как правило, записывается в ячейке памяти, непосредственно следующей за командным словом, и полученная сумма используется как адрес операнда (исполнительный адрес).