CMP - Сравнить аккумулятор с памятью (Compare Accumulator with Memory
Операция |
(A) - (M) |
Описание |
Сравнивается содержимое A c содержимым M и устанавливаются коды признаков, которые, затем, могут быть использованы для арифметических и логических условных переходов. Содержимое и A и M не изменяется. |
Коды признаков и Булевы выражения |
|
V: |
A7&M7#&R7# | A7#&M7&R7 Устанавливается, если в результате операции происходит переполнение дополнения до двух, в ином случае очищается. Буквально, признак переполнения появляется, если отрицательная величина вычитается из положительной величины и результат отрицательный, или, если положительная величина вычитается из отрицательной величины и результат положительный |
N: |
R7 Устанавливается, если MSB результата в состоянии 1, в ином случае очистить. |
Z: |
R7#&R6#&R5#&R4#&R3#&R2#&R1#&R0# Устанавливается, если результат равен $00, в ином случае очищается. |
C: |
A7#&M7 | M7&R7 | R7&A7# Устанавливается, если значение, без знака, содержимого памяти больше значения, без знака, содержимого аккумулятора, в ином случае очищается. |
Исходные формы, режимы адресации, машинные коды и количество циклов
Исходные формы |
Режим адресации |
Машинные коды |
Количество циклов HC08 |
Код операции |
Операнд(ы) |
CMP #opr |
IMM |
A1 |
ii |
2 |
CMP opr |
DIR |
B1 |
dd |
3 |
CMP opr |
EXT |
C1 |
hh ll |
4 |
CMP,X |
IX |
F1 |
|
2 |
CMP opr,X |
IX1 |
E1 |
ff |
3 |
CMP opr,X |
IX2 |
D1 |
ee ff |
4 |
CMP opr,SP |
SP1 |
9EE1 |
ff |
4 |
CMP opr,SP |
SP2 |
9ED1 |
ee ff |
5 |
|