Bitveidīgie operatori C valodā

Bitwise Operators C Language



Bitveidīgie operatori, kas bieži pazīstami kā bitu līmeņa kodēšana, ir noraidīti, lai interpretētu datus tikai bitu līmenī. Bitwise veic darbības ar vienu vai pat papildu bitu modeļiem un binārajiem skaitļiem bitu līmenī. Tos izmantoja, lai paātrinātu skaitlisko aprēķinu novērtēšanas gaitu. Tas sastāv no diviem skaitļiem, no kuriem viens ir 0, bet otrs ir 1. Šeit ir daži bitveidīgi operatori, kurus mēs apspriedīsim mūsu rakstā.

Piesakieties savā Linux sistēmā un izmēģiniet Ctrl+Alt+T saīsni, lai atvērtu konsoles termināli. Mums būs daži piemēri, lai sīkāk aprakstītu bitu operatoru darbības C valodā. Izstrādāsim katru bitveida operatoru atsevišķi.







Bitveidā UN:

Bitveidīgais operators ir izmantots, lai mazliet atkārtotu rezultātu, ja šis bits ir abos savstarpējos operandos. C vai C ++ ir nepieciešami 2 operandi, kas izpilda UN katrā no šiem diviem veseliem skaitļiem. Bitveidā UN iznāk 1, ja abiem bitiem ir vērtība 1. Tātad, lai saprastu darbu, izveidojiet un atveriet C tipa failu, izmantojot Nano redaktoru. Lai to izdarītu, mums ir jāizmanto nano instrukcija apvalkā šādi:



$nanotests.c



Bitwise AND operatora kods ir parādīts attēlā zemāk. Viss, kas jums jādara, ir vienkārši ierakstīt šo kodu savā GNU nano redaktora failā test.c. Šim kodam ir galvenes bibliotēka stdio.h, bez kuras mēs nevaram veikt kodēšanu C programmēšanā. Tad mēs esam izveidojuši galveno metodi ar atgriešanās veidu kā veselu skaitli. C valodā koda izpilde tiek veikta, izmantojot galveno metodi. Tātad mēs esam deklarējuši divus veselu skaitļu tipa mainīgos, x un y, attiecīgi ar vērtībām 35 un 13. Pēc tam ir norādīts vēl viens vesels skaitļa mainīgais, kura vērtība ir nulle. Mēs izmantosim pirmos divus veselus skaitļus un starp tiem izmantosim bitu un AND operatoru. Šis darbs tika veikts nākamajā rindā, kur AND operators tika izmantots kā &, un iegūtā vērtība tiks saglabāta nulles mainīgajā z. Tad mēs esam izmantojuši drukas paziņojumu, lai gala ekrānā parādītu iegūto vērtību, un galvenā metode tiek aizvērta. Saglabājiet failu, izmantojot GNU saīsni Ctrl+S, un pēc tam aizveriet nano redaktoru, izmantojot Ctrl+X no tastatūras rakstāmmašīnas.





Tātad, ir pienācis laiks apkopot iepriekš minēto kodu pēc faila saglabāšanas. Izmantojiet instrukciju gcc savā konsoles apvalkā, vienlaikus izmantojot faila nosaukumu kā test.c vai kā jūs nosaucāt failu, un nospiediet taustiņu Enter. Jūs varat redzēt, ka tajā nav kļūdu; tas nozīmē, ka kods ir manuāli pareizs.



$gcctests.c

Pēc koda apkopošanas ir pienācis laiks to izpildīt. Šim nolūkam apvalkā izpildiet tālāk norādīto vaicājumu. Rezultātā rezultāts tiek parādīts 1. Tas nozīmē, ka abiem mūsu veselu skaitļu mainīgajiem vienā bitā ir 1. Tāpēc tas atgriežas 1.

$./a. ārā

Bitveidā VAI:

Tagad ir jāizstrādā bitveida VAI operators. Bitu aprēķina operators atgriež 1, ja viens no tā bitiem ir 1. Ja abu veselu skaitļu biti ir 0, tad iegūst 0. Pēc visu bitu iegūšanas tiks ģenerēts bitu kopums. Mums ir jāredz, kāds bija šo bitu skaits. Tātad, vispirms atveriet to pašu test.c dokumentu. Ierakstiet un pēc tam saglabājiet zemāk redzamo kodu GNU failā, izmantojot taustiņu Ctrl+S. Kods ir gandrīz tāds pats kā iepriekš bitu un AND operatora piemērā. Šoreiz tikko esam mainījuši vesela skaitļa x vērtību uz 47, un esam izmantojuši operatoru OR, piem. | starp abiem mainīgajiem. Aizveriet failu, lai apkopotu kodu.

Pēc veiksmīgas dokumenta test.c izpildes tas parāda 47 izvades bitu.

$./a. ārā

Bitu virzienā XOR:

Bitu skaits operators atgriež 1, ja abi skaitļu biti ir atšķirīgi. Tātad, ja biti ir vienādi, tas dos 0. Operatora zīme ^ apzīmēs bitveida operatoru. Atkal atveriet dokumentu un GNU failu redaktorā ierakstiet to pašu veco kodu. Šoreiz mēs esam izmantojuši ^ operatorus divos veselos skaitļos, un rezultāts tiks saglabāts z mainīgajā, drukājot terminālī.

Apkopojiet un palaidiet failu test.c rezultātā atgrieziet 34. Tas nozīmē, ka jaunais vesels skaitlis 34 tiek ģenerēts pēc tam, kad XOR operators ir piemērots diviem veseliem skaitļiem.

$./a. ārā

Papildinājums bitveidā:

Šis operators tiks lietots tikai vienam mainīgajam, un tas atjaunos bitu numura vērtību. Piemēram, tas mainīs 0 bitu uz 1 un 1 līdz 0 bitu. Ierakstiet to pašu kodu tajā pašā failā, bet ar nelielām izmaiņām 6. rindā. Mēs esam piešķīruši x reversu līdz z.

Apkopojiet failu un palaidiet to. C gadījumā Bitwise papildinājuma rezultāts ir palielināts ar 1 ar negatīvu zīmi.

Kreisās maiņas operators:

Tas zināmā mērā mainīs bitu vietu. To pašu kodu var parādīt pievienotajā attēlā- zemāk. Šajā piemērā mēs pārvietosim 2 bitus pa kreisi.

Rezultātā 188 tiek parādīta kā jaunizveidota vērtība.

$./a. ārā

Labās maiņas operators:

Tas darbojas tāpat kā kreisā maiņa, bet pretējā virzienā, kā parādīts zemāk esošajā kodā.

Šoreiz mēs esam ieguvuši 11 kā izeju, pārvietojot 2 bitus uz labo pusi.

$./a. ārā

Secinājums:

Šajā rakstā mēs esam aptvēruši visus 6 pamata bitu operatorus mūsu C valodas kodā. Es ceru, ka jūs saņemsiet to, ko vēlējāties no mūsu ceļveža.