- •I. Задание на курсовой проект
- •1. Тематика курсового проекта
- •2. Задание и общие требования к выполнению
- •II. Методические указания к выполнению курсового проекта
- •1. Требования к блок-схеме алгоритма
- •2. Составление блок-схемы алгоритма и программы
- •3. Пример выполнения курсового проекта
- •3.1. Общая постановка задачи
- •3.2. Распределение памяти
- •3.3. Составление структурной схемы алгоритма решения задачи и программ
- •Программы вычислений на языке ассемблера и в машинных кодах
- •3.4. Замечания к примеру курсового проекта
- •Задание на курсовой проект Тема проекта: «Микропроцессорное устройство обработки информации
- •Основные директивы ассемблера
- •Основные приемы программирования
- •1. Организация счета
- •2. Организация временной задержки
- •3. Сложение и вычитание чисел
- •4. Умножение и деление
- •5. Организация массивов, очередей и стеков
- •5.1. Массивы
- •5.2. Очередь
- •5.3. Стек
- •6. Подпрограммы
- •Ассемблирование вручную
3.4. Замечания к примеру курсового проекта
Блок начальных директив не обязателен. Он вводится для удобства программирования. Адреса портов — 01H, 02H, 04H, 08H и т. д. Таким образом, для каждого порта выделяется отдельная линия.
Очередь требуется в том случае, когда одна из переменных зависит от t-N. Если все переменные зависят от t, очередь не нужна. В этом случае после блока начальных директив сразу идет ввод переменных (начиная с команды IN PORT).
При наличии переменной, зависящей от t-N, сначала вводятся все значения этой переменной при t…t-N в виде очереди. При этом в ячейке с начальным адресом записывается значение переменной при t-N, а в последней ячейке — значение при t.
Команды NOP используются для согласования быстродействующего микропроцессора с медленным устройством ввода. Так как микросхемы интерфейса ввода-вывода и периферийные устройства не заданы, количество этих команд не принципиально.
Умножение переменной на константу выполняется с помощью операций циклического сдвига RLC (умножение на 2) и RRC (умножение на 0,5). После каждой операции требуется команда ANA — сброс флага переноса, т. к. команды циклического сдвига влияют на этот флаг. Затем полученные результаты суммируются соответствующим образом.
Для перемножения переменных и возведения в квадрат используется специальная подпрограмма умножения, которая приведена в конце программы. Эта подпрограмма умножения более подробно объясняется в Приложении 6.
Если заданы 3 переменных, требуется добавить соответствующие блоки и операции.
Сложение числа в дополнительном коде эквивалентно вычитанию этого числа в прямом коде. Это позволяет заменить вычитание двухбайтных чисел их сложением. В системе команд МПК КР580 имеется команда DAD сложения двухбайтных чисел, но нет команды вычитания двухбайтных чисел. Представление вычитаемого числа в дополнительном коде позволяет использовать команду DAD для вычитания двухбайтных чисел.
ПРИЛОЖЕНИЕ 1
Министерство образования и науки Российской Федерации
Федеральное агентство по образованию
Государственное образовательное учреждение высшего
профессионального образования
Северо-Западный государственный заочный технический университет
Кафедра радиотехники
ПОЯСНИТЕЛЬНАЯ ЗАПИСКА К КУРСОВОМУ ПРОЕКТУ
По дисциплине «Цифровые устройства и микропроцессоры»
ТЕМА: «МИКРОПРОЦЕССОРНОЕ УСТРОЙСТВО ОБРАБОТКИ ИНФОРМАЦИИ»
Преподаватель <Ф. И. О.>
Студент <Ф. И. О.>
Шифр <Номер студенческого билета>
Факультет радиоэлектроники
Курс 3
Дата сдачи работы <Дата>
<Санкт-Петербург, филиал, УКП>, <Год>
ПРИЛОЖЕНИЕ 2
