Битни оператори у језику Ц

Bitwise Operators C Language



Битни оператори, често познати и као кодирање на нивоу бита, одбачени су да тумаче податке само на нивоу бита. Битови изводе операције над једним или чак додатним обрасцима бита и бинарним бројевима на нивоу бита. Они су коришћени за убрзавање напредовања процене нумеричких прорачуна. Састоји се од два броја, од којих је један 0, а други 1. Ево неколико битовних оператора о којима ћемо говорити у нашем чланку.

Пријавите се са свог Линук система и испробајте пречицу Цтрл+Алт+Т да бисте отворили терминал конзоле. Имаћемо неколико примера за разраду операција битовних оператора у језику Ц. Објаснимо сваки битни оператор засебно.







Битовно И:

Битовни оператор је коришћен за реплицирање бита у резултат ако је тај бит присутан у оба међусобна операнда. Ц или Ц ++ захтевају 2 операнда који изводе АНД на сваком биту од та два цела броја. По битовима И исходи 1 када оба бита имају вредност 1. Дакле, да бисте разумели рад, креирајте и отворите датотеку типа Ц помоћу Нано уређивача. За то морамо конзумирати нано инструкције у љусци на следећи начин:



$нанотест.ц



Код за операцију Битвисе АНД приказан је на доњој слици. Све што треба да урадите је да упишете овај код у своју датотеку ГНУ нано едитор тест.ц онакву каква јесте. Овај код има библиотеку заглавља стдио.х без које не можемо извршити кодирање у Ц програмирању. Затим смо креирали главни метод са његовим типом враћања као целобројним. У језику Ц, извршавање кода се врши путем главне методе. Тако смо декларисали две променљиве целобројног типа, к и и, са вредностима 35 и 13 према томе. Након тога, друга целобројна променљива је наведена са нулом као вредношћу. Користићемо прве две целобројне променљиве и применићемо операцију битова АНД између њих. Овај посао је обављен у следећој линији где је оператор АНД коришћен као &, а резултујућа вредност ће бити сачувана у нултој променљивој з. Затим смо користили испис принт да прикажемо резултујућу вредност на екрану терминала, а главни метод се затвара. Сачувајте датотеку помоћу пречице ГНУ Цтрл+С, а затим изађите из нано уређивача помоћу Цтрл+Кс са писаће машине.





Дакле, тренутак је за састављање горњег кода након чувања датотеке. Користите упутство гцц у љусци своје конзоле док користите име датотеке као тест.ц или како год сте датотеци дали назив и притисните тастер Ентер. Можете видети да не показује грешку; то значи да је код ручно исправан.



$гццтест.ц

Након састављања кода, време је да га извршите. У ту сврху покрените доле наведени упит у љусци. Резултат приказује 1 као исход. То значи да обе наше целобројне променљиве имају 1 у једном од својих битова. Због тога враћа 1.

$./а.оут

Битовно ИЛИ:

Сада је окренуто да се разради оператер по битовима ИЛИ. Битовни оператор враћа 1 као резултат када је један од његових бита 1. Ако су оба бита два цела броја 0, онда даје 0. Након добијања свих битова, биће генерисан скуп битова. Морамо да видимо колики је тај број настао. Дакле, прво отворите исти тест.ц документ. Откуцајте, а затим сачувајте доле приказани код у ГНУ датотеци помоћу тастера Цтрл+С. Код је скоро исти као у горњем примеру оператора битовног И. Овог пута смо управо променили вредност целог броја к у 47, а користили смо и оператор ОР, нпр. | између обе променљиве. Затворите датотеку да бисте компајлирали код.

Након успешно изведеног документа тест.ц, он приказује 47 излазни бит.

$./а.оут

Битни КСОР:

Битовни оператор враћа 1 када су оба бита различита. Дакле, када су битови исти, то ће дати 0. Знак ^ оператора ће представљати битовни оператор. Дакле, поново отворите документ и напишите исти стари код у уређивачу датотека ГНУ. Овај пут смо користили ^ операторе у оквиру две целобројне променљиве, а резултат ће бити ускладиштен у променљивој з током штампања у терминалу.

Компајлирање и покретање датотеке тест.ц враћа 34 као резултат. То значи да се нови цео број 34 генерише након што је оператор КСОР примењен на две променљиве целог броја.

$./а.оут

Битни комплемент:

Овај оператор ће се применити само на једну променљиву и он ће вратити вредност броја бита. На пример, промениће 0 бит у 1 и 1 у 0 бит. Напишите исти код у исту датотеку, али са малом променом у реду 6. Додијелили смо обрнуто од к на з.

Саставите датотеку и покрените је. У Ц, резултат Битвисе комплемента је повећан са 1 са негативним предзнаком.

Оператер леве смене:

То ће донекле померити место битова. Исти код се може приказати на слици испод. У овом примеру ћемо померити 2 бита улево.

Излаз приказује 188 као ново генерирану вриједност.

$./а.оут

Оператер десне смене:

Ради исто као што ради лева смена, али у супротном смеру, као што је приказано у доњем коду.

Овај пут имамо 11 као излаз након померања 2 бита на десну страну.

$./а.оут

Закључак:

У овом чланку смо обрадили све основне 6 битовних оператора у коду Ц језика. Надам се да ћете из нашег водича добити оно што сте хтели.