![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Пример выполнения команды
Выполнение команды реализуется в МПС через работу ее шин. Для иллюстрации рассмотрим выполнение короткого фрагмента программы передачи байта из одной ячейки памяти в другую. Пусть численное значение байта будет 10Н, а его передача производится из ячейки 0100Н в ячейку 0101 Н. Пусть также фрагмент программы размещается в памяти, начиная с ячейки 2000Н. Для выполнения фрагмента сначала нужно переслать байт в аккумулятор, а затем из аккумулятора в память. Так как обращение к памяти подразумевает косвенную адресацию, вначале требуется загрузка пары регистров Н адресом ячейки, к которой идет обращение. С учетом сказанного фрагмент программы в мнемокодах (на ассемблере МП) примет вид, показанный в левом столбце LXI Н, 0100Н 2000 21 00 01 MOV A, M 2003 7Е INX H 2004 23 MOV M, A 2005 77 Команда загрузки непосредственных данных в пару регистров LXI rрb3b2 имеет код ООПР0001 (см. табл. 5.3). Пара регистров имеет адрес ПР = 10. Подставив это значение в код команды, получаем код 21. В правом столбце записана команда в кодах. Она имеет вид: 21 00 01, т. к. после кода операции из памяти извлекаются сначала младший (00), а затем старший (01) байты. Команда трехбайтная и занимает ячейки памяти 2000...2002. Однобайтная команда MOV A, M пересылки из памяти в аккумулятор является вариантом команды MOV r, M с кодом 01ППП110. Подставив в этот код адрес регистра А = 111, получаем код команды 7Е. Команда INX H прибавляет единицу к содержимому регистровой пары и является вариантом, код которого получается из кода ООПР0011 при подстановке адреса пары регистров 10, что дает код 23. Последняя команда фрагмента программы (пересылка из аккумулятора в память) MOV M, А, имеющая код 77, передает в ячейку памяти, адрес который находится в регистровой паре H, содержимое аккумулятора. Эта команда завершает выполнение фрагмента программы. Последовательность четырех рассмотренных команд сгенерирует временные диаграммы (рис. 5.12), посредством которых программа будет выполнена. Рис. 5.12. Реализация программы сигналами шин микропроцессорной системы
|