ності МП-системи. Крім того, швидкість передачі даних через МП може виявитися недостатньою для роботи з високошвидкісними зовнішніми пристроями.
Прямим доступом до пам'яті називається спосіб обміну даними, обеспечіваюшій автономно від МП встановлення зв'язку і передачу даних між ОЗП і зовнішнім пристроєм.
Прямий доступ до пам'яті, підвищуючи граничну швидкість введення-виведення інформації і загальну продуктивність МП-системи, робить її більш пристосованою для роботи в системах реального часу. Прямим доступом до пам'яті управляє контролер ПДП, Виконуємо наступні функції:
управління ініційованої процесором або ПУ передачею даних між ОЗУ і ПУ;
завдання розміру блоку даних, який підлягає передачі, і області пам'яті, використовуваної при передачі;
формування адрес комірок ОЗУ, що беруть участь у передачі;
підрахунок числа байт, переданих через інтерфейс, і визначення моменту завершення заданої операції введення-виведення.
Завдання № 1
мікропроцесор програма акумулятор логічний
Mov A, # eeh
Тип команди - 2 (перший байт - код операції, другий байт # d);
довжина - 2 байта; час виконання - 1 цикл.
Цей рядок поміщає константу ЕЕН в акумулятор.
clr з
Тип команди - 1 (перший байт - код операції);
довжина - 1 байта; час виконання - 1 цикл.
Скидання прапора С в нуль.
loop: subb a, # 11h
loop - мітка
Тип команди - 2 (перший байт - код операції, другий байт # d);
довжина - 2 байта; час виконання - 1 цикл.
Віднімання з акумулятора константи 11Н і позичання (віднімається 3 рази до обнулення).
jnz loop
Тип команди - 5 (перший байт - код операції, другий байт rel);
довжина - 2 байта; час виконання - 2 циклу.
Якщо значення акумулятора не дорівнює нулю, то переходимо на мітку loop.
Nop (3 рази)
Порожня операція;
Тип команди - 1; довжина - 1 байт; час виконання - 1 цикл.
Команда - пауза.
mov p1, A
Тип команди - 3 (перший байт - код операції, другий байт аd);
довжина - 2 байта; час виконання - 1 цикл.
Пересилання значення міститься в акумуляторі, в порт р1.
Після виконання фрагмента програми і в акумуляторі і в порте Р1 міститься нульове значення.
Розрахунок часу виконання 1 циклу:
Т Ц=12 / f T=12/12=1 мкс.
Програма виконується за 15 циклів.
Загальний час виконання фрагмента:
Т=15Т Ц=15.1=15 мкс.
Завдання № 2
Логічні операції виконувати:
а) над вмістом акумулятора можна;