CodeGym /Kurslar /Java SELF AZ /Bit əməliyyatları Java-da

Bit əməliyyatları Java-da

Java SELF AZ
Səviyyə , Dərs
Mövcuddur

1. Bit operatoru AND

Biri vaxt demişdik ki, bütün məlumatlar yaddaşda ikilik sistemdə saxlanılır. Buna görə də proqramçıların çoxdan sayların ikilik təqdimatı ilə işləmək üçün bir çox maraqlı şeylər fikirləşiblər. Məsələn, Java-da rəqəmlərin bitləri ilə işləyən məntiqi operatorlar mövcuddur: AND (Və), OR (Və ya), NOT (Deyil) və XOR (istisna və ya).

a & b
Bit operatoru AND (Və)

Bu operator məntiqi AND (Və) operatoruna çox bənzəyir, sadəcə olaraq iki amperə deyil, birinə işarələnir:

Və bu operator bütöv rəqəmə deyil, onun bitlərinə tətbiq edilir: rəqəm bitlər massivi kimi nəzərdən keçirilir və i-ci bit nəticə rəqəminin i-ci bitinə əsasən hesablanır. iki rəqəmin bitləri.

Nəticənin ilk biti a rəqəminin ilk bitinə və b rəqəminin ilk bitinə, ikinci bit isə ikinci bitinə əsasən hesablanacaq. a rəqəminin ikinci bitinə və b rəqəminin ikinci bitinə və s.

AND (Və) operatoru o deməkdir ki, “nəticə biti yalnız o halda birlikdə olacaq ki, a rəqəminin biti birlikdə olsun b rəqəminin biti birlikdə olsun”:

1 & 1 = 1
1 & 0 = 0
0 & 1 = 0
0 & 0 = 0

Məsələnlər:

Məsələn Nəticə
0b0011 & 0b1010
0b0010
0b1111 & 0b0000
0b0000
0b1010 & 0b0101
0b0000
0b1111 & 0b1010
0b1010

2. Bit operatoru OR

Bu operator məntiqi operator OR (VƏ YA) ilə çox oxşardır, sadəcə iki şaquli xətt ilə deyil, bir xətt ilə göstərilir:

a | b

Həmçinin o, bütöv bir ədədə deyil, onun bitlərinə tətbiq olunur: i-ci bit nəticə ədədinin hər iki ədədin i-ci bitlərinə əsasən hesablanır.

Bit operatoru OR (VƏ YA) o deməkdir ki, «nəticə biti birdir əgər a ədədinin biti birdir VƏ YA b ədədinin biti birdir»:

1 | 1 = 1
1 | 0 = 1
0 | 1 = 1
0 | 0 = 0

Nümunələr:

Nümunə Nəticə
0b0011 | 0b1010
0b1011
0b1110 | 0b0000
0b1110
0b1010 | 0b0101
0b1111
0b1111 | 0b1010
0b1111

Yalnız hər iki ədədin (eyni mövqedə yerləşən) bitləri sıfır olduqda, nəticənin müvafiq biti sıfır olur.



3. Bit operatoru XOR (İSTİSNA OLARAQ YAXUD)

XOR operatoru, ona həm də istisna olaraq yaxud deyilir, ^ simvolu ilə göstərilir. Klaviaturada onu daxil etmək üçün shift+6 (İngilis düzləmində) düymələrini sıxmaq lazımdır.

a ^ b

Bu operator bir az da OR operatoruna bənzəyir, (hətta adları da oxşardır — XOR)

Bit XOR (İSTİSNA OLARAQ YAXUD) deyir ki, “nəticə biti o vaxt 1 olur, əgər a sayının biti 1 YAXUD b sayının biti 1-dirsə, amma hər ikisi eyni anda deyil”:

1 ^ 1 = 0
1 ^ 0 = 1
0 ^ 1 = 1
0 ^ 0 = 0

Nümunələr:

Nümunə Nəticə
0b0011 ^ 0b1010
0b1001
0b1110 ^ 0b0000
0b1110
0b1010 ^ 0b0101
0b1111
0b1111 ^ 0b1010
0b0101

Ancaq hər iki sayın bitləri (eyni mövqedə olanlar) fərqli olduqda, nəticə bit 1-ə bərabərdir. Əgər bitlər eynidirsə, nəticə bit 0-a bərabərdir.



4. Bitlərlə operator NOT (YOX, İNKAR)

Düşünürəm ki, artıq bunun nəyi ifadə etdiyini təxmin edirsən. Bu operator məntiqi operator NOT (YOX)-a çox bənzəyir, amma nida işarəsi ilə deyil, tilda ilə işarələnir:

~a

Bu operator unarnıdır: iki rəqəmə deyil, yalnız birinə tətbiq olunur və həmin rəqəmin qarşısında yazılır.

Bitlərlə NOT "nəticə biti birdir, əgər a ədədinin biti sıfırdırsa, və sıfırdır, əgər a ədədinin biti birdirsə" deməkdir:

~1 = 0
~0 = 1

Nümunələr:

Nümunə Nəticə
~0b0011
0b1100
~0b0000
0b1111
~0b0101
0b1010
~0b1111
0b0000

Bu operator sadəcə biti 1-dən 0-a və 0-dan 1-ə dəyişir.


Şərhlər
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION