Bitni operatori u jeziku C

Bitwise Operators C Language



Bitni operatori, često poznati i kao kodiranje na razini bita, odbačeni su za tumačenje podataka samo na razini bita. Bitni postupak izvodi operacije na jednom ili čak dodatnim uzorcima bitova i binarnim brojevima na razini bita. Oni su korišteni za ubrzavanje procjene napredovanja numeričkih izračuna. Sastoji se od dva broja, od kojih je jedan 0, a drugi 1. Evo nekoliko bitovnih operatora o kojima ćemo govoriti u našem članku.

Prijavite se sa svog Linux sustava i pokušajte prečac Ctrl+Alt+T da biste otvorili terminal konzole. Imat ćemo nekoliko primjera za elaboriranje operacija bitnih operatora u jeziku C. Razradimo svaki bitni operator zasebno.







Po bitovima I:

Bitovni operator korišten je za repliciranje bita u rezultat ako je taj bit prisutan u oba međusobna operanda. C ili C ++ zahtijeva 2 operanda koji izvode AND na svakom bitu od ta dva cijela broja. Bitni rezultati I ishodi 1 kada oba bita imaju vrijednost 1. Dakle, da biste razumjeli rad, stvorite i otvorite datoteku tipa C pomoću Nano uređivača. Za to moramo konzumirati nano instrukcije u ljusci na sljedeći način:



$nanotest.c



Kod za operaciju Bitwise AND prikazan je na donjoj slici. Sve što trebate učiniti je samo upisati ovaj kôd u datoteku GNU nano editor test.c kakav je. Ovaj kod ima biblioteku zaglavlja stdio.h bez koje ne možemo izvršiti kodiranje u C programiranju. Zatim smo stvorili glavnu metodu s vrstom povratka kao cijeli broj. U jeziku C izvršavanje koda vrši se glavnom metodom. Tako smo proglasili dvije varijable tipa cijeli broj, x i y, s vrijednostima 35 i 13 prema tome. Nakon toga je navedena druga cjelobrojna varijabla s nulom kao vrijednošću. Koristit ćemo prve dvije cjelobrojne varijable i primijeniti operator bitova AND između njih. Ovaj je rad obavljen u sljedećem retku gdje je operator AND korišten kao &, a rezultirajuća vrijednost bit će pohranjena u nultoj varijabli z. Zatim smo upotrijebili ispis print za prikaz rezultirajuće vrijednosti na ekranu terminala, a glavna metoda se zatvara. Spremite datoteku pomoću prečaca GNU Ctrl+S, a zatim zatvorite nano editor putem Ctrl+X s pisaćeg stroja.





Dakle, trenutak je za sastavljanje gornjeg koda nakon spremanja datoteke. Upotrijebite upute gcc u ljusci svoje konzole dok koristite naziv datoteke kao test.c ili kako god ste datoteci dali naziv i pritisnite tipku Enter. Možete vidjeti da ne pokazuje grešku; to znači da je kôd ručno ispravan.



$gcctest.c

Nakon sastavljanja koda, vrijeme je za izvršenje koda. U tu svrhu pokrenite dolje navedeni upit u ljusci. Rezultat prikazuje 1 kao ishod. To znači da obje naše cjelobrojne varijable imaju 1 u jednom od svojih bitova. Zato vraća 1.

$./a.out

Bitovno ILI:

Sada je potrebno razraditi operator bitova ILI. Bitovni operator vraća 1 kao rezultat kada je jedan od njegovih bita 1. Ako su oba bita dva cijela broja 0, onda daje 0. Nakon dobivanja svih bitova, bit će generiran skup bitova. Moramo vidjeti koliki je taj broj nastao. Dakle, prvo otvorite isti dokument test.c. Upišite, a zatim spremite dolje prikazani kôd u datoteku GNU pomoću tipke Ctrl+S. Kôd je gotovo isti kao u gornjem primjeru bitovnog operatora AND. Ovaj put smo samo promijenili vrijednost cijelog broja x u 47, a koristili smo operator OR, npr. | između obje varijable. Zatvorite datoteku da biste sastavili kôd.

Nakon uspješno izvedenog dokumenta test.c, prikazuje 47 izlazni bit.

$./a.out

Bitni XOR:

Bitovni operator vraća 1 kad su oba bita različita. Dakle, kad su bitovi isti, dobit će 0. Znak operatora ^ predstavljat će bitni operator. Pa opet otvorite dokument i napišite isti stari kôd u GNU uređivaču datoteka. Ovaj put smo koristili operatore ^ unutar dvije cjelobrojne varijable, a rezultat će biti pohranjen u varijabli z tijekom ispisa u terminalu.

Kompiliranje i pokretanje datoteke test.c kao rezultat vraća 34. To znači da se novi cijeli broj 34 generira nakon što je operator XOR primijenjen na dvije cjelobrojne varijable.

$./a.out

Bitni komplement:

Ovaj će se operater primijeniti samo na jednu varijablu i vratit će vrijednost broja bita. Na primjer, promijenit će 0 bit u 1 i 1 u 0 bit. Upišite isti kod u istu datoteku, ali s malom promjenom u retku 6. Zadali smo obrnuto od x.

Sastavite datoteku i pokrenite je. U C -u je rezultat Bitwise komplementa povećan s 1 s negativnim predznakom.

Operator pomaka ulijevo:

To će donekle pomaknuti mjesto bitova. Isti kod može se prikazati na slici u nastavku. U ovom primjeru pomaknut ćemo 2 bita ulijevo.

Izlaz prikazuje 188 kao novo generiranu vrijednost.

$./a.out

Operater pomaka udesno:

Radi isto kao što radi pomak ulijevo, ali u suprotnom smjeru, kao što je prikazano u donjem kodu.

Ovaj put imamo 11 kao izlaz nakon pomicanja 2 bita na desnu stranu.

$./a.out

Zaključak:

U ovom smo članku obradili svih osnovnih 6 bitovnih operatora u kodu C jezika. Nadam se da ćete iz našeg vodiča dobiti ono što ste htjeli.