Bitové operátory v jazyce C.

Bitwise Operators C Language



Bitové operátory, často známé jako kódování na úrovni bitů, byly přetypovány k interpretaci dat pouze na bitové úrovni. Bitwise provádí operace s jedním nebo dokonce dalšími bitovými vzory a binárními čísly na bitové úrovni. Ty byly použity k urychlení postupu odhadu numerických výpočtů. Skládá se ze dvou čísel, z nichž jedno je 0 a druhé je 1. Zde jsou některé bitové operátory, o kterých budeme diskutovat v našem článku.

Přihlaste se ze systému Linux a zkuste klávesovou zkratku Ctrl+Alt+T otevřít terminál konzoly. Budeme mít několik příkladů na zpracování operací bitových operátorů v jazyce C. Pojďme se podrobně zabývat každým bitovým operátorem samostatně.







Bitově A:

Bitový operátor byl použit k replikaci bitů do výsledku, pokud je tento bit přítomen v obou vzájemných operandech. C nebo C ++ vyžaduje 2 operandy, které provádějí AND na každém bitu těchto dvou celých čísel. Bitové A výsledky 1, když oba bity mají hodnotu 1. Abyste porozuměli fungování, vytvořte a otevřete soubor typu C pomocí editoru Nano. K tomu musíme ve skořápce konzumovat nano instrukce následovně:



$nanotest. c



Kód pro bitový operátor AND byl zobrazen na obrázku níže. Jediné, co musíte udělat, je napsat tento kód do souboru test.c editoru GNU nano tak, jak je. Tento kód má knihovnu záhlaví stdio.h, bez které nemůžeme kódování provést v programování C. Pak jsme vytvořili hlavní metodu s návratovým typem jako celé číslo. V jazyce C se provádění kódu provádí hlavní metodou. Deklarovali jsme tedy dvě celočíselné proměnné typu x a y, podle toho hodnoty 35 a 13. Poté byla zadána další celočíselná proměnná s nulovou hodnotou. Použijeme první dvě celočíselné proměnné a použijeme mezi nimi bitový operátor AND. Tato práce byla provedena na dalším řádku, kde byl operátor AND použit jako &, a výsledná hodnota bude uložena do nulové proměnné z. Potom jsme použili příkaz print k zobrazení výsledné hodnoty na obrazovce terminálu a hlavní metoda se zavře. Uložte soubor pomocí zkratky GNU Ctrl+S a poté ukončete nano editor pomocí Ctrl+X z psacího stroje na klávesnici.





Je tedy načase kompilovat výše uvedený kód po uložení souboru. Použijte instrukci gcc v prostředí konzoly a současně použijte název souboru jako test.c nebo jakýkoli jiný název souboru a stiskněte klávesu Enter. Vidíte, že nevykazuje žádnou chybu; to znamená, že kód je ručně správný.



$gcctest. c

Po zkompilování kódu je čas spustit kód hned. Za tímto účelem spusťte v shellu níže uvedený dotaz. Výstup ukazuje 1 jako výsledek. To znamená, že obě naše celočíselné proměnné mají 1 v jednom ze svých bitů. Proto vrací 1.

$./a.out

Bitově NEBO:

Nyní je zapnuto, aby byl zpracován bitový operátor OR. Bitový operátor vrací 1 jako výsledek, když jeden z jeho bitů je 1. Pokud jsou oba bity dvou celých čísel 0, pak získá 0. Po získání všech bitů bude vygenerována sada bitů. Musíme zjistit, jaké číslo tyto bity tvořily. Nejprve tedy otevřete stejný dokument test.c. Zadejte a poté uložte níže uvedený kód do souboru GNU pomocí klávesy Ctrl+S. Kód je téměř stejný jako výše uvedený příklad bitového operátoru AND. Tentokrát jsme právě změnili hodnotu celého čísla x na 47 a použili jsme operátor OR, např. | mezi oběma proměnnými. Ukončete soubor a zkompilujte kód.

Po úspěšném provedení testu dokumentu.c ukazuje výstupní bit 47.

$./a.out

Bitový XOR:

Bitový operátor vrací 1, když jsou oba číselné bity různé. Takže když jsou bity stejné, získá to 0. Znak operátoru ^ bude představovat bitový operátor. Takže znovu otevřete dokument a napište stejný starý kód do editoru souborů GNU. Tentokrát jsme používali operátory ^ ve dvou celočíselných proměnných a výsledek bude při tisku v terminálu uložen do proměnné z.

Kompilace a spuštění souboru test.c vrátí 34 jako výsledek. To znamená, že nové celé číslo 34 je generováno poté, co byl operátor XOR aplikován na dvě celočíselné proměnné.

$./a.out

Bitový doplněk:

Tento operátor bude použit pouze pro jednu proměnnou a vrátí hodnotu bitového čísla. Například změní 0 bit na 1 a 1 až 0 bit. Napište stejný kód do stejného souboru, ale s malou změnou na řádku 6. Přiřadili jsme opak x k z.

Zkompilujte soubor a spusťte jej. V C byl výsledek bitového doplňku zvýšen o 1 se záporným znaménkem.

Operátor levého řazení:

Do určité míry posune místo bitů. Stejný kód lze zobrazit na přiloženém obrázku- níže. V tomto případě budeme přesouvat 2 bity doleva.

Výstup ukazuje 188 jako nově generovanou hodnotu.

$./a.out

Operátor pravého řazení:

Funguje to stejně jako levé řazení, ale v opačném směru, jak ukazuje kód níže.

Tentokrát máme 11 jako výstup po přesunutí 2 bitů na pravou stranu.

$./a.out

Závěr:

V tomto článku jsme pokryli všechny základní 6 bitové operátory v našem kódu jazyka C. Doufám, že od našeho průvodce získáte to, co jste chtěli.