Алгоритм | Пример |
(A):=(A)+(Rn), где n=0-7 (С):=x, (OV):=x, (AC):=x, где xÎ{0,1} | ;(A)=0C3H, (R6)=0AAH ADD A, R6 ;(A)=6DH,(R6)=0AAH, ;(AC)=0, (C)=1, (OV)=1 |
ADD A,@Ri ;где iÎ{0,1} | 0 0 1 0 0 1 1 i |
Команда "сложение" складывает содержимое аккумулятора A с содержимым ячейки резидентной памяти данных (РПД), адресуемой содержимым заданного регистра Ri выбранного банка. Результат размещается в A. Содержимое используемой ячейки не изменяется. Логика установки (сброса) флагов и время выполнения такие же, как у рассмотренной выше команды с аналогичной мнемоникой.
Алгоритм | Пример |
(A):=(A)+((Ri)), где iÎ{0,1} (С):=x, (OV):=x, (AC):=x, где xÎ{0,1} | ;(A)=95H, (R1)=31H, ;в РПД (31H)=4CH ADD A,@R1 ;(A)=0E1H, (C)=0, ;(AC)=1, (OV)=0, (31H)=4CH |
ADD A, direct | 0 0 1 0 0 1 0 1 | direct |
Команда "сложение" складывает содержимое аккумулятора A с содержимым ячейки резидентной памяти данных (либо регистра специальных функций), 8-разрядный адрес которой (которого) определяется символическим именем direct. Результат помещается в A. Содержимое используемой ячейки или используемого регистра не изменяется. Логика установки (сброса) флагов и время выполнения такие же, как у рассмотренной выше команды с аналогичной мнемоникой.
| Алгоритм | Пример | |
| (A):=(A)+(direct) (С):=x, (OV):=x, (AC):=x, где xÎ{0,1} | ;(A)=77H, (P1)=0FFH ADD A, P1 ;(A)=76H, ;(AC)=1, (C)=1, (OV)=0 ;(P1)=0FFH | |
ADD A,#data8 | 0 0 1 0 0 1 0 0 | data8 |
|
Команда "сложение" складывает содержимое аккумулятора A с байтом данных data8, непосредственно указанным в команде. Результат размещается в A. Логика установки (сброса) флагов и время выполнения такие же, как у рассмотренной выше команды с аналогичной мнемоникой.
Алгоритм | Пример |
(A):=(A)+data8 (С):=x, (OV):=x, (AC):=x, где xÎ{0,1} | ;(A)=09H ADD A,#0D3H ;(A)=0DCH, ;(AC)=0, (C)=0, (OV)=0 |
ADDC A, Rn ;где n=0-7 | 0 0 1 1 1 r r r | где rrrB=000B-111B |
Команда "сложение с переносом" одновременно складывает содержимое аккумулятора A, содержимое флага переноса С и содержимое заданного регистра Rn выбранного банка, помещая результат в A. Содержимое используемого регистра не изменяется. При появлении переносов из разрядов 7 и 3 результата устанавливаются в "1" флаг переноса C и флаг дополнительного переноса AC соответственно, в противном случае эти флаги сбрасываются в "0". Флаг переполнения OV устанавливается, если есть перенос из бита 6 и нет переноса из бита 7, или есть перенос из бита 7 и нет - из бита 6, в противном случае флаг OV сбрасывается. Время выполнения команды 1 цикл.
Алгоритм | Пример |
(A):=(A)+(C)+(Rn), где n=0-7 (С):=x, (OV):=x, (AC):=x, где xÎ{0,1} | ;(A)=0B2H, (R3)=99H, (C)=1 ADDC A, R3 ;(A)=4CH,(R3)=99H, ;(AC)=0, (C)=1, (OV)=1 |
ADDC A,@Ri ;где iÎ{0,1} | 0 0 1 1 0 1 1 i |
Команда "сложение с переносом" одновременно складывает содержимое аккумулятора A, содержимое флага переноса C и содержимое ячейки резидентной памяти данных (РПД), адресуемой содержимым заданного регистра Ri выбранного банка. Результат помещается в A. Содержимое используемой ячейки не изменяется. Логика установки (сброса) флагов и время выполнения такие же, как у рассмотренной выше команды с аналогичной мнемоникой.
Алгоритм | Пример |
(A):=(A)+(C)+((Ri)), где iÎ{0,1} (С):=x, (OV):=x, (AC):=x, где xÎ{0,1} | ;(A)=0D5H, (R0)=3AH, ;в РПД (3AH)=1AH, (C)=1 ADDC A,@R0 ;(A)=0F0H, ;(AC)=1, (C)=0, (OV)=0, ;(3AH)=1AH |
ADDC A, direct | 0 0 1 1 0 1 0 1 | direct |
Команда "сложение с переносом" одновременно складывает содержимое аккумулятора A, содержимое флага переноса C и содержимое ячейки резидентной памяти данных (либо регистра специальных функций), 8-разрядный адрес которой (которого) определяется символическим именем direct. Результат помещается в A. Содержимое используемой ячейки или используемого регистра не изменяется. Логика установки (сброса) флагов и время выполнения такие же, как у рассмотренной выше команды с аналогичной мнемоникой.
Алгоритм | Пример |
(A):=(A)+(C)+(direct) (С):=x, (OV):=x, (AC):=x, где xÎ{0,1} | ;(A)=11H, (C)=1, ;(DPH)=0DFH ADDC A, DPH ;(A)=0F1H, ;(AC)=1, (C)=0, (OV)=0, ;(DPH)=0DFH |
ADDC A,#data8 | 0 0 1 1 0 1 0 0 | data8 |
Команда "сложение с переносом" одновременно складывает содержимое аккумулятора A, содержимое флага переноса C и байт данных data8, непосредственно указанный в команде. Результат размещается в A. Логика установки (сброса) флагов и время выполнения такие же, как у рассмотренной выше команды с аналогичной мнемоникой.
Алгоритм | Пример |
(A):=(A)+(C)+data8 (С):=x, (OV):=x, (AC):=x, где xÎ{0,1} | ;(A)=55H, (C)=0 ADDC A,#55H ;(A)=0AAH, ;(AC)=0, (C)=0, (OV)=1 |
AJMP addr11 | addr11[10-8] 0 0 0 0 1 | addr11[7-0] |
Команда "абсолютный переход" передает управление по адресу с символическим именем addr11, который образуется с помощью конкатенации (сцепления) 5-ти старших бит содержимого счетчика команд PC (после увеличения его на 2), содержимого 7-5 битов старшего байта команды и содержимого второго байта команды. Адрес перехода и указанная команда должны находиться внутри одной страницы памяти программ (ПП) объемом 2 Кбайт, определяемой содержимым пяти старших бит PC. Время выполнения команды 2 цикла.
| Алгоритм | Пример | |
| (PC):=(PC)+2 (PC[10-0]):=addr11[10-8] çêaddr11[7-0], где çêесть знак конкатенации | ;(PC)=28FH, ;MT2 соответствует адресу ;34AH в ПП AJMP MT2 ;(PC)=34AH | |
ANL A, Rn ;где n=0-7 | 0 1 0 1 1 r r r | где rrrB=000B-111B |
|
Команда "логическое И" выполняет поразрядную конъюнкцию содержимого аккумулятора A с содержимым заданного регистра Rn выбранного банка, помещая результат в A. Содержимое используемого регистра не изменяется. Команда на состояние флагов не влияет и имеет время выполнения 1 цикл.
Алгоритм | Пример |
(A):=(A)Ù(Rn), где n=0-7 | ;(A)=0FH, (R2)=0C5H ANL A, R2 ;(A)=05H,(R2)=0C5H |
ANL A,@Ri ;где iÎ{0,1} | 0 1 0 1 0 1 1 i |
Команда "логическое И" выполняет поразрядную конъюнкцию содержимого аккумулятора A с содержимым ячейки резидентной памяти данных (РПД), адресуемой содержимым заданного регистра Ri выбранного банка. Результат размещается в A. Содержимое используемой ячейки не изменяется. Команда на состояние флагов не влияет и имеет время выполнения 1 цикл.
Алгоритм | Пример |
(A):=(A)Ù((Ri)), где iÎ{0,1} | ;(A)=0BCH, (R0)=35H, ;в РПД (35H)=47H ANL A,@R0 ;(A)=04H, ;в РПД (35H)=47H |
ANL A, direct | 0 1 0 1 0 1 0 1 | direct |
Команда "логическое И" выполняет поразрядную конъюнкцию содержимого аккумулятора A с содержимым ячейки резидентной памяти данных (либо регистра специальных функций), 8-разрядный адрес которой (которого) определяется символическим именем direct. Результат помещается в A. Содержимое используемой ячейки или используемого регистра не изменяется. Команда на состояние флагов не влияет и имеет время выполнения 1 цикл.
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |


