Seriál - PIC16F84 - 13 - Instrukce logických operací
09. 07. 07 - 17:20. Napsal Jiří Chytil. Přečteno 4419x. 3 komentáře
Použití instrukcí logických operací u mikrořadičů PIC16F84A
Instrukce ANDLW, IORLW, XORLW
V MCU je potřeba naprosto běžně pracovat s logickými operacemi, od pouhého maskování bitů přes různé složitější kombinované logické operace. O ty se v mikrořadičích PIC stará 7 instrukcí. Instrukce ANDLW, IORLW a XORLW jsou svojí činností ekvivalencí k funkcím ADDLW a SUBLW. Stejně jako zmíněné aritmetické funkce pracují pouze s pracovním registrem W a konstantou a výsledek ukládají opět zpátky do pracovního registru W.
ANDLW b'00001111' IORLW b'00000001' XORLW b'00000001'
Instrukce ANDWF, IORWF, XORWF
Funkce, tak jak jsou postupně zapsané, by provedly logický součin (funkce ANDLW), logický součin (funkce IORLW) a logickou ekvivalenci (funkce XORLW).
Obdobně jsou zde funkce ANDWF, IORWF a XORWF, které jsou svým chováním ekvivalencí k funkcím ADDWF a SUBWF. Funkce tedy pracují s pracovním registrem W a s registrem v parametru a výsledek ukládají podle hodnoty druhého parametru, buď do pracovního registru W, nebo do registru v prvním parametru.
ANDWF TONE,1 IORWF TONE,1 XORWF TONE,1
Instrukce COMP
S těmito funkcemi se určitě časem setkáme při různých programech pro různá použití, teď se ale vrhneme na poslední logickou funkci a tou je funkce COMF. Ta slouží k vytvoření doplňku A její parametry jsou stejné jako u funkcí ANDWR a dalších. Jako první parametr tedy doplníme registr, kterému chceme vytvořit doplněk a jako druhý parametr vložíme konstantu určující cíl uložení výsledku. Při parametru nulovém je výsledek uložen do pracovního registru W, pokud je ovšem parametr roven jedné, potom je výsledek ukládán do registru, který je zadán v prvním parametru.
MOVLF b'0111 0010' MOVWF TONE COMF TONE,1
Po provedení této operace bude registr TONE obsahovat binární číslo, které nabývá hodnoty b'1000 1101'. Aritmetických a logických operací budeme v našich programech využívat poměrně málo.
Novinky Další novinky
Anketa
Jaký obchod preferujete při nákupu součástek?
TME
GES
GME
Farnell
SOS electronic
TIPA
EZK
PS Electronic
Mouser
Buček
Denkl Electronic
FK Technics
Hadex
Conrad
Jiný český
Jiný zahraniční
Poslední komentáře