Operatorzy Arduino Bitwise

Operatorzy Arduino Bitwise
Istnieje wiele rodzajów operatorów używanych w programowaniu Arduino do tworzenia różnych warunków. Warunki te regulują przepływ kodu zaprojektowanego do wykonania określonego zadania. Jednym z najważniejszych rodzajów operatorów używanych w programowaniu Arduino są operatorzy bitowate i, w tym artykule, operatorzy bitowców i ich typy są wyjaśnione krótko.

Operatorzy bitowate

Operatorzy bitowców są używane do nakładania operatorów logicznych na dziesiętne, przekształcając je w binarne, a następnie operatorzy zastosowali po kroku po binarie tej liczby. Do celów ilustracyjnych pobrane są dwa dziesiętne 12 i 13, jeśli obie liczby zostaną przekonwertowane w binarnych wartości odpowiednio (1100) i (1101).

Zasadniczo używanych jest sześciu operatorów bitowców, które są:

  • I
  • LUB
  • NIE
  • Xor
  • lewa zmiana
  • Prawa zmiana

Bitwise i operator

Pierwszym operatorem bitowatym jest operator, który daje wyjście tylko wtedy, gdy oba wejścia są jedno lub prawdziwe. Znak do używania Bitwise to „I". W celu dalszego zrozumienia i działalności stosuje się na wartości binarnych odpowiednio 12 i 13. Operacja stosuje się stopniowo do plików binarnych liczb, takich jak pierwszy bit 12, który jest 1, a przy pierwszym bicie 13, który jest również jednym, więc wynik operacji jest jeden i tak dalej jest (1100), czyli 12, jeśli przekonwertujemy go w dziesiętne.

Dziesiętny 12 13
Dwójkowy 1100 1101
Operator (12 i 13)
Wynik (1100)
Od binarny do dziesiętnego 12

Bitwise lub operator

Drugi operator, który jest lub po zastosowaniu na liczbach binarnych, podaje jeden jako wyjście, gdy tylko jeden z wejść to 1, więc możemy powiedzieć, że wyjście operacji OR będzie wynosić zero tylko wtedy, gdy oba wejścia wynoszą zero. Znak używany dla operatora lub jest „|". Aby dalej zrozumieć działanie lub możemy zastosować to lub operator na binezach 12 i 13.

OR OR operator stosuje odkąd po plikach binarnych 12 i 13, podobnie jak pierwszy bit 13 to 1, a pierwszy bit 12 jest również jednym, więc wyjście będzie również jedną operacją na reszcie bitu będzie taka sama. Rezultatem jest (1101), który jest następnie konwertowany na dziesiętne, które wynosi 13

Dziesiętny 12 13
Dwójkowy 1100 1101
Operator (12 | 13)
Wynik (1101)
Od binarny do dziesiętnego 13

Bitwise, a nie operator

Nie operator, w przeciwieństwie do innych operatorów, ma tylko jedno wejście i wyjście i odwraca wejście. Znak używany do reprezentowania operatora nie jest „~". Tutaj użyjemy binarnego jednej dziesiętnej. Na przykład, jeśli weźmiemy binarny z 13, który (1101) po operacji operatora lub nadejdzie (0010), który ma 2 w dziesięciu dziesiętnych.

Dziesiętny 13
Dwójkowy 1101
Operator (~ 13)
Wynik (0010)
Od binarny do dziesiętnego 2

Bitwise Xor Operator

Ten operator bitowate nazywa się wyłącznością lub jedyną różnicą jest to, że ma on zwykłą lub operację, jest to, że jego wyjście wyniesie zero, gdy oba wejścia są jednym. Reprezentowanie lub użycie tej operacji w programowaniu Arduino używany znak to „^". Jeśli ta operacja zostanie zastosowana dla liczb 12 i 13, których pliki binarne to (1100) i (1101) wynik bit mądry XOR wynosi (0001), a dziesiętne tego binarnego wynosi 1.

Dziesiętny 12 13
Dwójkowy 1100 1101
Operator (12 ^ 13)
Wynik (0001)
Od binarny do dziesiętnego 1

Bitwise lewa przesunięcie i przesunięcie prawe

Przesunięcie bitów binarnego liczby można wykonać za pomocą operatora zmiany; Operator zmiany biegów jest dalej podzielony na dwa typy, w zależności od strony, należy wykonać przesunięcie. Aby mieć przesunięcie po prawej stronie, formuła użyta do tego (a/(2^b)).

Podobnie, aby dokonać zmiany po lewej, zastosowana formuła jest (a*(2^b)). Tutaj A to liczba, na której ma zastosowanie zmiana ,2 to liczba bitów, a B to liczba zmian bitów podanych do liczby. Reprezentacja lewego przesunięcia jest (<) i dla właściwej zmiany jest (>> c) Tutaj C to na przykład liczba bitów, do których liczba ma zostać przesunięta, jeśli zmienimy 12 dwóch bitów po lewej i przesunięci dwa bity po prawej stronie, wynik na przesunięcie lewej wyniesie 48, a dla prawej zmiany wyniesie 3.

Dziesiętny 12 12
Dwójkowy 1100 1100
Operator 12 <<2 12 >> 2
Wynik 110000 11
Od binarny do dziesiętnego 48 3

Program Arduino dla wszystkich bitowych operatorów jest opracowany, aby dać jasny obraz funkcjonalności tych operatorów:

int a = 12;
int b = 13;
int c; // do przechowywania wyniku
void setup () // Umieść kod konfiguracji tutaj, aby uruchomić raz:
Seryjny.Rozpocznij (9600); // inicjalizacja komunikacji szeregowej
Seryjny.drukuj („i:”);
c = a & b;
Seryjny.println (c);
Seryjny.drukuj („lub:”);
C = A | B;
Seryjny.println (c);
Seryjny.print („xor:”);
c = a^b;
Seryjny.println (c);
Seryjny.print („nie”);
c = ~ a;
Seryjny.println (c);
Seryjny.print („lewa zmiana:”);
C = 12<<2;
Seryjny.println (c);
Seryjny.print („PRAWA SHIFT:”);
c = 12 >> 2;
Seryjny.println (c);

void Loop ()
// Umieść swój główny kod tutaj, aby działać wielokrotnie:

Wyjście

Wniosek

Aby zastosować działanie logiczne na dwóch liczbach, używane są operatorzy bitowców, a operatorzy ci pomagają w tworzeniu warunku używanego do wykonania określonego zadania. Ten zapis krótko wyjaśnia każdy typ operatora bitowców z przykładami i podaje jasną koncepcję tych operatorów i podano również prosty kod Arduino.