МЕТОДИЧЕСКИЕ УКАЗАНИЯ. Программная реализация функций счета и временной задержки
Программная реализация функций счета и временной задержки Приразработкепрограммногообеспечениясистемуправлениячастовозникает необходимостьвыполненияопределенныхдействийзаданноеколичествораз.Дляэтого используются программные счетчики, которые реализуются двумя способами: 1. Путем инкремента содержимого
2. Путем декремента содержимого регистра или ячейки памяти: Вэтихпримерах телоциклавыполняется30раз. Очевидно, чтовторойспособболее удобен, таккакпозволяетреализоватьчисло повторовот1до256; еслиначальноезначение В = 0, тоциклповторяется256раз.Принеобходимостивчислеповторовболее255можно использоватьвложенныесчетчики.Программныйсчетчиксколичествомповторений1200 может выглядеть следующим образом: Временныезадержкиреализуютсяпутемповторенияцикловсизвестнымвременем выполнения.ТаккакмикропроцессорКР580ВМ80Аработаетначастоте2 МГц, товремя выполненияодноготактасоставляетT = 0, 5 мкс.Знаяколичествотактов, необходимыхдля выполненияопределенныхкоманд, можнорассчитатьвремявыполнениялюбогоучастка программного кода: MVIB, 100D; 7 тактов, 100 повторений цикла M0: NOP; пустая операция 4 такта NOP; 4 такта DCRB; 5 тактов JNZM0; 10 тактов ВэтомпримеречислотактовN = 7+(4+4+5+10)× 100 = 2307.Тогдавремявыполнения составляет t = 2307× 0, 5 = 1153, 5 мкс. Для задержки длительностью до 10 мс используются однократные циклы. Таким образом, нетрудно сформировать программную задержку на 1 мс: MVIB,...; … тактов, 100 повторений цикла M0: MVIC, 86D; 7 тактов M1: NOP; 4 такта NOP; 4 такта DCRC; 5 тактов JNZM1; 10 тактов DCRB; 5 тактов JNZM0; 10 тактов Вэтом примере числотактов N = B× (7+86× (4+4+5+10)+4+5+10) = B× 2000. Для получения задержек на несколько секунд используют тройные циклы. СОДЕРЖАНИЕ РАБОТЫ 1. Изучить действия команд передачи управления и условного перехода. 2.Выполнить на компьютере примеры. ВОПРОСЫ ВЫХОДНОГО КОНТРОЛЯ: 1.Перечислите кодировки адресов регистров. 2.Назовите ограничения при использовании условных переходов.
|