Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Команды логических операций.
В состав команд входят команды выполнения операций И, ИЛИ, исключающее ИЛИ (сумма по модулю 2), а также операция сравнения. Список команд МП: ANA r (M) < A> and < r> ® < A> XRA r (M) < A> xor < r> ® < A> ORA r (M) < A> or < r> ® < A> CMP r (M) если < A> < < r>, то < C бит> = 1 если < A> = < r>, то < Z бит> = 1 если < A> > < r>, то < C бит> = 0 Аналогично с командами арифметических операций, существуют команды логических операций, когда вместо r задается число. ANI число; XRI число; ORI число; CPI число; При выполнении команд сравнения содержимое аккумулятора сравнивается либо с содержимым регистра (CMP r), либо со значением числа (CPI число). При этом содержимое аккумулятора не изменяется. Биты состояния устанавливаются в зависимости от результата вычитания операнда из содержимого аккумулятора. Команда исключающего ИЛИ XRA r: (A)Å (r)®A производит поразрядное сложение операндов по mod 2. Команда XRA применяется для инвертирования определенных битов слова с помощью слова-маски на основе тождества 1 Å x =`x. Другое применение XRA связано со сравнением слов на абсолютное равенство. В единственном случае, когда операнды поразрядно совпадают, результат операции содержит нули во всех разрядах (согласно тождеству X Å X = 0), о чем сигнализирует флажок (бит состояние) Z=1. Команды арифметических операций. Эти команды, в зависимости от типа применяемого операнда занимают в памяти 1, 2 или 3 байта. По командам арифметических операций содержимое одного из регистров B, C D, E, H, L или содержимое ячейки памяти М (адресуемой регистровой парой Н) или непосредственный операнд команды прибавляется (вычитается) к (из) содержимому регистра А, причем в операции может быть учтено значение С-бита. Значения битов состояния (C, S, Z, P) устанавливаются в зависимости от результата выполнения операции: С - переполнение; S - знак результата (минус S=1); Р=1 – четное число единиц в аккумуляторе. Примеры команд: ADD r; Сложить содержимое регистра (ячейки памяти) и аккумулятора ADD M; ADC r (M); Сложить содержимое регистра (ячейки памяти) и аккумулятора ; с учетом бита переноса SUB r (M) SBB r (M) ADI число; Сложить непосредственный операнд и аккумулятор ACI число
Аналогичные команды для вычитания SUI и SBI.
DAD rp - сложить содержимое регистровой пары rp (B или D) и аккумулятора, в роли которого выступает регистровая пара H, L. Команды сдвига. Команды данной группы требуют 1 байт памяти. По этим командам содержимое аккумулятора сдвигается влево или вправо на один разряд. В этой операции принимает и С-бит. Значение С-бита может в результате выполнения команды изменяться, а значения остальных флагов остается неизменным. Формат команды имеет вид: (Метка: ) RLC; Сдвинуть циклически содержимое аккумулятора влево ; Rotate accumulator left RRC; Сдвинуть циклически содержимое аккумулятора вправо RAL; Сдвинуть циклически содержимое аккумулятора влево ; через бит переноса RAR; Сдвинуть циклически содержимое аккумулятора вправо ; через бит переноса
Если обозначить разряды в А от A[0] до A[7], то выполняемую операцию можно описать следующим образом: RLC: A[7] ® < Cб >; A[m] ® A[m+1], m = 0,..., 6; A[7] ® A[0]. RAL: A[7] ® < Cб >; A[m] ® A[m+1], m = 0,..., 6; Cб ® A[0].
Схематично четыре операции сдвига можно изобразить следующим образом (рис.3.8). Команды передачи управления. Эти команды часто называют командами перехода. Позволяют выполнять различные действия в соответствии со значением внешних сигналов или выработанных в процессе выполнения операций условий. Все типы команды делятся на команды безусловного и условного перехода. К безусловным командам относятся:
При выполнении команды вызова CALL временно запоминается текущее содержимое программного счетчика (т.е. адрес команды, следующий за командой CALL и называемый адресом возврата), и загружается адрес перехода команды CALL в РС, а после выполнения программы адрес возврата передается в РС. Последняя функция реализуется специальной однобайтной командой RET. Для запоминания адресов возврата используется стековая память. Рисунок 3.8 – Схема осуществления команд сдвига в аккумуляторе
Имеется группа команд условного перехода, выполняемых в зависимости от значения одного из четырех флагов состояния (C, Z, S, P). Если условие перехода выполнено, то осуществляется переход по адресу, указанному в команде. В противном случае выполняется следующая команда. Группу команд условного перехода образуют 8 команд.
Популярное:
|
Последнее изменение этой страницы: 2017-03-11; Просмотров: 1089; Нарушение авторского права страницы