Команди логічних операцій мікроконтролера mcs51.
До цієї групи відноситься 25 команд, короткий опис яких наведено в табл. 4. Ці команди дозволяють виконувати операції над байтами: логічне множення І, логічне додавання АБО, виключаючи АБО, інверсію (НЕ), скидання в нуль та зсув. В таблиці також вказано тип команди (Т) у відповідності з табл. 1, її довжина в байтах (Б) та час виконання в машинних циклах (Ц). Табл. 4. Команди логічних операцій.
53) ANL A, Rn Команда “логічне множення І” виконує операцію логічне “І” над бітами змінних, вказаних в команді, і заносить результат в байт-приймач. Ця операція не впливає на стан прапорців. (A)=FEH, (R2)=C5H, ANL A, R2, (A) FEH 11111110B (R2) C5H 11000101B A & R2 C4H 11000100B (A)=C4H, (R2)=C5.
54) ANL A, ad (A)=A3H, (PSW)=86H ANL A, PSW (A) A3H 10100011B (PSW) 86B 10000110B A & PSW 82H 10000010B (A)=82H, (PSW)=86H.
55) ANL A, @Ri (A)=BCH, (35H)=47H (R0)=35H ANL A, @R0 (A) BCH 10111100B ((R0)) 47H 01000111B A & @R0 04H 00000100B (A)=04H, (35H)=47H.
56) ANL A, #d (A)=36H ANL A, #0DDH (A) 36H 00110110B #d DDH 11011101B A & #d 14H 00010100B (A)=14H.
57) ANL ad, A (A)=55H, (P2)=AAH
ANL P2, A (P2) AAH 10101010B (A) 55H 01010101B P2 & A 00H 00000000B (P2)=00H, (A)=55H.
58) ANL ad, #d (P1)=FFH ANL P1, #73H (P1) FFH 11111111B #d 73H 01110011B P1 & #d 73H 01110011B (P1)=73H.
59) ORL A, Rn Команда “логічне додавання АБО” виконує операцію логічне “АБО” над бітами змінних, вказаних в команді, і заносить результат в байт-приймач. Ця операція не впливає на стан прапорців. (A)=15H, (R5)=C6H ORL A, R5 (A) 15H 00010101B (R5) C6H 11000101B A OR R5 D5H 11010101B (A)=D5H, (R5)=C5H.
60) ORL A, ad (A)=84H, (PSW)=C2H ORL A, PSW (A) 84H 10000100B (PSW) C2H 11000010B A OR PSW C6H 11000110B (A)=C6H, (PSW)=C2H.
61) ORL A, @Ri (A)=52H, (R0)=6DH, (6DH)=49H (A) 52H 01010010B ((R)) 49H 01001001B A OR @R0 5BH 01011011B (A)=5BH, (6DH0=49H.
62) ORL A, #d (A)=F0H ORL A, 0AH (A) F0H 11110000B #d 0AH 00001010B A OR #d 14H 11111010B (A)=FAH.
63) ORL ad, A (A)=34H, (IP)=23H ORL IP, A (IP) 23H 00100011B (A) 34H 00110100B IP ORL A 00H 00110111B (IP)=37H, (A)=34H.
64) ORL ad, #d (P1)=00H ORL P1, #0C4H (P1) 00H 00000000B #d C4H 11000100B P1 OR #d C4H 11000100B (P1)=C4H.
65) XRL A, Rn Команда “логічне виключаюче АБО” виконує операцію “виключаюче АБО” над бітами змінних, вказаних в команді, результат заноситься в байт-приймач. На прапорці ця команда не впливає. (A)=C3H, (R6)=AAH XRL A, Rn (A) C3H 11000011B (R6) AAH 10101010B A XRL R6 69H 01101001B (A)=69H, (R6)=AAH.
66) XRL A, ad (A)=A9H, (P1)=A6H XRL A, P1 (A) 0FH 00001111B (P1) A6H 10100110B A XRL P1 A9H 10101001B (A)=A9H, (P1)=A6H.
67) XRL A, @Ri (A)=55H, (R1)=77H, (77H)=5AH XRL A, @R1 (A) 55H 01010101B ((R1)) 5AH 01011010B A XRL ((R1)) 0FH 00001111B (A)=0FH, ((R1))=5AH.
68) XRL A, #d (A)=0C3H XRL A, #0F5H (A) C3H 11000011B F5H 11110101B A XRL #F5H 36H 00110110B (A)=36H
69) XRL ad, A (P1)=82H (A)=31H XRL P1, A (P1) 82H 10000010B (A) 31H 00110001B P1 XRL A B3H 10110011B
70) XRL ad, #d (B)=65H XRL B, #35H (B) 65H 01100101B 35H 00110101B B XRL #35H 50H 01010000B
71) CLR A Команда скидає (анулює) вмістиме аккумулятора A. На прапорці команда не впливає. (A)=7FH CLR A (A)=00H
72) CPL A Команда виконує інверсію вмістимого аккумулятора (кожний біт акумулятора змінюється на протилежний). Біти, що містять “1” після цієї команди будуть містити “0”, та навпаки. На прапорці ця команда не впливає. (A) 4DH 01001101B CPL A (A) B2H 10110010B
73) RL A Команда виконує зсув вмістимого аккумулятора вліво (вісім біт аккумулятора зсуваються на один біт вліво, біт 7 передається на місце біту 0). На прапорці ця команда не впливає. (A) 8BH 10001011B RL A (A) 16H 00010110B.
74) RLC A Команда виконує зсув вмістимого аккумулятора вліво через прапорець переносу С (вісім біт аккумулятора та прапорець переносу зсуваються на один біт вліво, вмістиме прапорця переносу передається на місце біту 0 аккумулятора, вмістиме біту 7 передається на місце прапорця переносу). На інші прапорці ця команда не впливає.
(A) 56H 01010110B, (C)=1 RLC A (A) ADH 10101101B, (C)=0.
75) RR A Команда виконує зсув вмістимого аккумулятора вправо (вісім біт аккумулятора зсуваються на один біт вправо, біт 0 передається на місце біту 7). На прапорці ця команда не впливає. (A) 6EH 01101110B RR A (A) 37H 00110111B.
76) RRC A Команда виконує зсув вмістимого аккумулятора вправо через прапорець переносу С (вісім біт аккумулятора та прапорець переносу зсуваються на один біт вправо, вмістиме прапорця переносу передається на місце біту 7 аккумулятора, вмістиме біту 0 передається на місце прапорця переносу). На інші прапорці ця команда не впливає. (A) A8H 10101000B, (C)=1 RLC A (A) D4H 11010100B, (C)=0.
77) SWAP A Команда виконує обмін тетрадами вмістимого аккумулятора (обмін між чотирма молодшими та чотирма старшими бітами аккумулятора). На прапорці ця команда не впливає. (A) 5DH 01011101B SWAP A (A) D5H 11010101B.
Читайте также: II -приравненное к нотариальному (глав.врач больницы, командиры воинских частей) Воспользуйтесь поиском по сайту: ©2015 - 2025 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|