Пример решения задачи. Порядок решения задач разберем на примере задачи переноса четных чисел из массива с начальным адресом ADR = 200H и длиной N = 8 в массив с начальным адресом

 

Порядок решения задач разберем на примере задачи переноса четных чисел из массива с начальным адресом ADR = 200H и длиной N = 8 в массив с начальным адресом ADR2 = 2A0H. Схема алгоритма решения задачи изображена на рис.3.3, а схема программы PRIM приведена на рис.3.4.


В схеме программы использован вычитающий счетчик элементов исходного массива, построенный на регистре В. Исходным загружаемым в счетчик числом является длина массива (В ← 8), изменением текущего состояния счетчика производится уменьшение содержимого регистра В на единицу (В ← В – 1).

Определение четности элемента исходного массива осуществляется путем определения значения младшего бита двоичного кода этого числа. Если меньший бит равен 0, то число четное, а если младший бит равен 1 – число нечетное.

Определение значения младшего бита в программе выполнено путем операции сдвига вправо и проверки значения признака переноса «С» регистра признаков F. В данном примере определение четности числа начинается с пересылки A←M, т. к. команды сдвига выполняются только в аккумуляторе.

В микропроцессорах, как правило, нет команд пересылки данных из одной ячейки памяти в другую, поэтому сначала данные из ячейки памяти с адресом в HL пересылаются в регистр А, а затем из регистра А – в ячейку памяти с адресом в DE.

Текст исходного модуля рассматриваемой программы имеет следующий вид:

N EQU 8 ; директивы

ADR2 EQU 2A0H ; определения

ADR SET 200H ; имен

ORG 1A0H ; директива установки адреса программы

MVI B, N ; B ← N

LXI D, ADR2 ; DE ← ADR2

LXI H, ADR ; HL ← ADR

M1: MOV A, M ; A ← MHL

RRC ; сдвиг вправо

JC M2 ; если есть перенос –

; переход по метке M2

MOV A, M ; A ← MHL Команды

STAX D ; A → MDE программы

INX D ; DE + 1 → DE

M2: INX H ; HL + 1 → HL

DCR B ; B – 1 → B

JNZ M1 ; если результат предыдущей

; операции ≠ 0 – переход

; по метке М1

HLT ; остановка процессора

END ; директива прекращения

; ассемблирования

 

Далее производится подготовка загрузочных модулей и отладка программы PRIM с помощью симулятора СРМ.

Функциональная схема ядра первого 8-разрядного

Микрокомпьютера

Функциональная схема ядра первого микрокомпьютера на базе 8-разрядного МП приведена на рис.3.5. Схема содержит 8-разрядный микропроцессор МП, генератор тактовых импульсов ГТИ, системный контроллер СК, шинный формирователь адреса ШФ, постоянное ПЗУ и оперативное ОЗУ запоминающие устройства, шины адреса ША, шины данных ШД, шины управления ШУ.

МП реализован на БИС КР580ВМ80. ГТИ реализован на микросхеме КР580ГФ24 и формирует синхросигналы для МП.

ШФ адреса, выполненный на микросхеме КР580ВА86, и СК, выполненный на микросхеме КР580ВК28, формируют сигналы для системной шины – ША, ШД, ШУ.

ПЗУ – энергонезависимая память, предназначенная для хранения программ.

ОЗУ – оперативная память, предназначенная для записи и чтения данных в процессе вычислений.

Подобную функциональную схему имеют серийно выпускаемые программируемые контроллеры, используемые в автоматизированных системах управления технологическими процессами (АСУ ТП), а также микроконтроллеры, применяемые для встраиваемых систем обработки информации.

Для управления несложными объектами и технологическими процессами обычно используются измерительные преобразователи с погрешностью несколько процентов и применяются классические алгоритмы ПИД – регулирования. Для решения такого широко распространенного круга задач, а также встраиваемых приложений 8-разрядные микропрцессоры являются эффективным средством реализации систем управления, ибо применение 16 и 32-разрядных процессоров в этих задачах функционально избыточно и дорого.

 


Контрольные вопросы

1.Определите назначение РОН, адресного регистра, регистра команд, флажкового регистра.

2.С какой целью РОН объединяются в регистровые пары?

3.В чем отличие структурной схемы МС от ее программной модели?

4. Какие блоки входят в состав центрального процессора?

5.Перечислите достоинства и недостатки языка программирования ассемблер. Для решения каких задач целесообразно применять этот язык программирования?

6.Для чего предназначена программа-симулятор?

7. В чем состоит отличие целевых и инструментальных МС?








Дата добавления: 2016-06-13; просмотров: 852;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.007 сек.