Промышленные контроллеры. Микропроцессорные системы энергетических объектов. Готшальк О.А. - 23 стр.

UptoLike

Составители: 

23
CC_ULT левый операнд меньше правого (без знака);
CC_UGT левый операнд больше правого (без знака);
CC_SLT меньше (со знаком);
СС_SGT больше (со знаком);
CC_SLE меньше или равно (со знаком);
CC_SGE больше или равно (со знаком).
Мнемокоды битовых команд условных переходов:
JB переход по метке, если в устройстве, указанном
в условии, установлен бит
(единица);
JNB переход по метке, если в устройстве, указанном в условии, не установлен
бит (единица).
Если объявленное в команде условие в ходе реализации программы
выполняется, то программа переходит по метке; если условие не выполняется,
то команда условного перехода игнорируется.
Пример 5.6.2
Если в результате операции вычитания разность станет равной нулю, то,
игнорируя команду пересылки, произвести операцию сдвига информации.
Программа
SUB R0,R3; R0:=R0R3
JMPR CC_Z,F; если разность равна нулю, то перейти по метке F
MOV R5,R6; R5R6
F: SHL R0,#2; сдвиг влево на 2 бита
5.6.3. Условный переход со сравнением операндов
При этом условном переходе задаются две команды: команда сравнения
операндов (мнемокод CMP) и команда собственно условного перехода. При
этом результат сравнения операндов никуда не заносится, содержимое
регистров не меняется, но в результате выполнения операции сравнения
устанавливаются новые значения сигналов в регистре состояний.
Команды сравнения операндов имеют
вид
CMP R
w
,R
w
;
.
CMP R
w
,#data 16;
CMPВ R
b
,R
b
;
CMPВ R
b
,#data 8;
Пример 5.6.3
В программе
MOV R0,R5; R0R5
MOV R3,R6; R3R6
SUB R0,R3; R0:=R0R3
JMPR cc_Z,F; если разность равна нулю, то перейти по метке F