Bitų operatoriai C kalba

Bitwise Operators C Language



„Bitwise“ operatoriai, dažnai žinomi kaip bitų lygio kodavimas, buvo atmesti siekiant interpretuoti duomenis tik bitų lygiu. „Bitwise“ atlieka operacijas su vienu ar net papildomais bitų modeliais ir dvejetainiais skaičiais bitų lygiu. Jie buvo naudojami siekiant paspartinti skaičiavimų skaičiavimo progresą. Jį sudaro du skaičiai, iš kurių vienas yra 0, o kitas yra 1. Štai keletas bitų operatorių, kuriuos aptarsime savo straipsnyje.

Prisijunkite iš „Linux“ sistemos ir išbandykite spartųjį klavišą „Ctrl“+„Alt“+T, kad atidarytumėte konsolės terminalą. Turėsime keletą pavyzdžių, kaip išplėsti bitų operatorių operacijas C kalba. Išsiaiškinkime kiekvieną bitų operatorių atskirai.







Bitais ir:

Bitų operatorius buvo naudojamas šiek tiek pakartoti rezultatą, jei tas bitas yra abiejuose operanduose. Norint naudoti C arba C ++, reikia 2 operandų, atliekančių IR kiekviename tų dviejų sveikųjų skaičių bite. Bitais ir išeina 1, kai abu bitai turi reikšmę 1. Taigi, norėdami suprasti veikimą, sukurkite ir atidarykite C tipo failą naudodami „Nano“ redaktorių. Norėdami tai padaryti, mes turime naudoti nano instrukcijas apvalkale taip:



$nanotestas.c



„Bitwise AND“ operatoriaus kodas buvo parodytas žemiau esančiame paveikslėlyje. Viskas, ką jums reikia padaryti, tai tiesiog įrašyti šį kodą į savo GNU nano redaktoriaus failą test.c. Šis kodas turi stdio.h antraštės biblioteką, be kurios negalime atlikti kodavimo C programavimo metu. Tada sukūrėme pagrindinį metodą, kurio grąžinimo tipas yra sveikasis skaičius. C kalba kodas vykdomas naudojant pagrindinį metodą. Taigi mes paskelbėme du sveikojo tipo kintamuosius, x ir y, atitinkamai 35 ir 13 reikšmes. Po to buvo nurodytas kitas sveiko skaičiaus kintamasis, kurio vertė lygi nuliui. Mes naudosime pirmuosius du sveikuosius kintamuosius ir tarp jų taikysime operaciją „BIT“. Šis darbas buvo atliktas kitoje eilutėje, kurioje AND operatorius buvo naudojamas kaip &, o gauta vertė bus išsaugota nuliniame kintamajame z. Tada mes panaudojome spausdinimo teiginį, norėdami parodyti gautą vertę terminalo ekrane, ir pagrindinis metodas uždaromas. Išsaugokite failą naudodami GNU spartųjį klavišą „Ctrl+S“, tada uždarykite „nano“ redaktorių naudodami „Ctrl“+X iš klaviatūros rašomosios mašinėlės.





Taigi, atėjo laikas surinkti aukščiau pateiktą kodą išsaugojus failą. Naudokite gcc instrukciją savo konsolės apvalkale, naudodami failo pavadinimą kaip test.c arba bet kokį failo pavadinimą ir paspauskite klavišą Enter. Matote, kad nerodo klaidos; tai reiškia, kad kodas yra rankiniu būdu teisingas.



$gcctestas.c

Surinkus kodą, laikas jį vykdyti dabar. Šiuo tikslu apvalkale paleiskite žemiau nurodytą užklausą. Rezultatas rodo rezultatą 1. Tai reiškia, kad abu mūsų sveikųjų skaičių kintamieji viename iš jų yra 1. Štai kodėl jis grąžina 1.

$./a. ne

Bitais arba:

Dabar reikia patobulinti bitų ARBA operatorių. Bitų operatorius grąžina 1, kai vienas iš jo bitų yra 1. Jei abu sveikųjų skaičių bitai yra 0, tada gaunamas 0. Gavęs visus bitus, bus sukurtas bitų rinkinys. Turime pamatyti, kokį skaičių sudarė tie bitai. Taigi, pirmiausia atidarykite tą patį test.c dokumentą. Įveskite ir išsaugokite žemiau esantį kodą GNU faile naudodami klavišą Ctrl+S. Kodas yra beveik toks pat, kaip aukščiau pateiktas bitų IR operatoriaus pavyzdys. Šį kartą ką tik pakeitėme sveikojo skaičiaus x reikšmę į 47, o naudojome operatorių OR, pvz. | tarp abiejų kintamųjų. Uždarykite failą, kad sudarytumėte kodą.

Sėkmingai įvykdžius dokumento testą.c, jis parodo 47 išvesties bitą.

$./a. ne

Bitinis XOR:

Bitų operatorius grąžina 1, kai abu skaičių bitai skiriasi. Taigi, kai bitai yra vienodi, tai duos 0. Operatoriaus ženklas ^ parodys bitų operatorių. Taigi dar kartą atidarykite dokumentą ir parašykite tą patį seną kodą GNU failų redaktoriuje. Šį kartą mes naudojome ^ operatorius dviejuose sveikųjų skaičių kintamuosiuose, o rezultatas bus išsaugotas kintamajame z, o spausdinamas terminale.

Kompiliuokite ir paleiskite failą test.c dėl to grąžinkite 34. Tai reiškia, kad naujas sveikasis skaičius 34 generuojamas po to, kai XOR operatorius yra pritaikytas dviem sveiko skaičiaus kintamiesiems.

$./a. ne

Bitinis papildymas:

Šis operatorius bus taikomas tik vienam kintamajam ir grąžins bitų skaičiaus vertę. Pavyzdžiui, jis pakeis 0 bitą į 1 ir 1 į 0 bitą. Į tą patį failą įrašykite tą patį kodą, bet šiek tiek pakeiskite 6 eilutę.

Sudarykite failą ir paleiskite. C atveju „Bitwise“ papildymo rezultatas buvo padidintas 1 su neigiamu ženklu.

Kairysis pamainos operatorius:

Tai šiek tiek pakeis bitų vietą. Tas pats kodas gali būti rodomas pridėtame paveikslėlyje- žemiau. Šiame pavyzdyje mes perkelsime 2 bitus į kairę.

Rezultatas rodo 188 kaip naujai sukurtą vertę.

$./a. ne

Dešiniojo poslinkio operatorius:

Jis veikia taip pat, kaip ir kairysis poslinkis, bet priešinga kryptimi, kaip parodyta žemiau esančiame kode.

Šį kartą gavome 11 išvesties, perkėlus 2 bitus į dešinę.

$./a. ne

Išvada:

Šiame straipsnyje apžvelgėme visus pagrindinius 6 bitų operatorius mūsų C kalbos kode. Tikiuosi, kad iš mūsų vadovo gavote tai, ko norėjote.