Bit nyelvű operátorok C nyelven

Bitwise Operators C Language



A bitenkénti operátorokat, amelyeket gyakran bitszintű kódolásnak is neveznek, leválasztották, hogy csak bitszinten értelmezzék az adatokat. A Bitwise műveleteket hajt végre egy vagy akár további bitmintákkal és bináris számokkal a bitszinten. Ezeket arra használták, hogy felgyorsítsák a numerikus számítások becslési folyamatát. Két számból áll, amelyek közül az egyik 0, a másik az 1. Íme néhány bitenkénti operátor, amelyeket cikkünkben tárgyalunk.

Jelentkezzen be Linux rendszeréből, és próbálja ki a Ctrl+Alt+T billentyűkombinációt a konzolterminál megnyitásához. Lesz néhány példánk a B nyelvű operátorok C nyelvű műveleteinek részletezésére. Részletezzük az egyes bitenkénti operátorokat külön -külön.







Bitenként ÉS:

A bitszerű operátort arra használták, hogy egy kicsit megismételje az eredményt, ha ez a bit mindkét kölcsönös operandusban megtalálható. A C vagy a C ++ két operandust igényel, amelyek a két egész szám mindegyik bitjén AND -t hajtanak végre. A bitenkénti ÉS kimenete 1, ha mindkét bit értéke 1. Tehát a működés megértéséhez hozzon létre és nyisson meg egy C típusú fájlt a Nano szerkesztővel. Ehhez nano utasításokat kell használnunk a shellben az alábbiak szerint:



$nanoteszt.c



A Bitwise AND operátor kódja megjelenik az alábbi képen. Csak annyit kell tennie, hogy írja be ezt a kódot a GNU nano editor test.c fájljába úgy, ahogy van. Ez a kód rendelkezik az stdio.h fejléckönyvtárral, amely nélkül nem tudjuk elvégezni a kódolást a C programozásban. Ezután létrehoztunk egy fő módszert, amelynek visszatérési típusa egész. A C nyelvben a kód végrehajtása a fő módszerrel történik. Tehát két egész típusú változót deklaráltunk, x és y, a 35 és 13 értékekkel. Ezt követően egy másik egész változót adtak meg, amelynek értéke nulla. Az első két egész változót fogjuk használni, és a bit -es ÉS operátort alkalmazzuk közöttük. Ezt a munkát elvégezték a következő sorban, ahol az ÉS operátort & -ként használták, és a kapott értéket a z null változó tárolja. Ezután a print utasítással megjelenítettük a kapott értéket a terminál képernyőn, és a fő módszer bezárul. Mentse el a fájlt a GNU Ctrl+S billentyűparancsával, majd lépjen ki a nanoszerkesztőből a Ctrl+X billentyűzettel a billentyűzeten.





Tehát itt a pillanat, hogy összeállítsa a fenti kódot a fájl mentése után. Használja a gcc utasítást a konzol héjában, miközben a fájl nevét teszt.c -ként használja, vagy bármit, amit a fájlnak nevezett, és nyomja meg az Enter billentyűt. Láthatja, hogy nem mutat hibát; ez azt jelenti, hogy a kód manuálisan helyes.



$gccteszt.c

A kód összeállítása után most végre kell hajtani a kódot. Ebből a célból futtassa az alábbi lekérdezést a shellben. A kimenet 1 -et mutat eredményként. Ez azt jelenti, hogy mindkét egész változónk bitjében 1 van. Ezért adja vissza az 1.

$./a.ki

Bitenként VAGY:

Most fordult a bites VAGY operátor kidolgozásához. A bitenkénti operátor 1 -et ad vissza, ha egyik bitje 1. Ha két egész szám mindkét bitje 0, akkor 0 -t ad. Az összes bit beszerzése után bitkészlet keletkezik. Látnunk kell, hogy ezek a bitek milyen számot alkottak. Tehát először nyissa meg ugyanazt a test.c dokumentumot. Gépelje be, majd mentse az alábbi kódot a GNU fájlba a Ctrl+S billentyűvel. A kód majdnem ugyanaz, mint a fenti bitenkénti ÉS operátor példában. Ezúttal az x egész szám értékét 47 -re módosítottuk, és az OR operátort használtuk, pl. | mindkét változó között. Lépjen ki a fájlból a kód fordításához.

A dokumentum teszt sikeres végrehajtása után a 47 kimeneti bitet mutatja.

$./a.ki

Bit -szerű XOR:

A bitenkénti operátor 1 -et ad vissza, ha mindkét számbit eltér. Tehát ha a bitek megegyeznek, akkor 0 lesz. Tehát ismét nyissa meg a dokumentumot, és írja be ugyanazt a régi kódot a GNU fájlszerkesztőben. Ezúttal két egész változón belül használtuk a ^ operátorokat, és az eredmény a z változóban tárolódik, miközben kinyomtatja a terminált.

Fordítsa le és futtassa a fájlt. Ez azt jelenti, hogy az új 34 egész szám azután jön létre, hogy az XOR operátort két egész változóra alkalmazták.

$./a.ki

Bitszerű kiegészítés:

Ez az operátor csak egyetlen változóra lesz alkalmazva, és visszaállítja a bitszám értékét. Például megváltoztatja a 0 bitet 1 -re és 1 -ről 0 -ra. Írja be ugyanazt a kódot ugyanabba a fájlba, de némi változtatással a 6. sorban. Az x fordítottját z -hez rendeljük.

Fordítsa le a fájlt, és futtassa. C -ben a Bitwise komplement eredményét 1 -el növeltük negatív előjellel.

Bal váltás kezelője:

Ez bizonyos mértékig eltolja a bitek helyét. Ugyanez a kód jeleníthető meg az alábbi képen. Ebben a példában 2 bitet eltolunk balra.

A kimenet a 188 -at mutatja újonnan létrehozott értékként.

$./a.ki

Jobb váltó kezelő:

Ugyanúgy működik, mint a bal váltás, de az ellenkező irányba, ahogy az alábbi kód mutatja.

Ezúttal 11 kimenetet kaptunk, amikor 2 bitet a jobb oldalra toltunk.

$./a.ki

Következtetés:

Ebben a cikkben a C nyelvű kódunkban szereplő összes 6 bites operátort ismertettük. Remélem, megkapja, amit az útmutatónkból akart.