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
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.
Və AND
(Və) operatoru o deməkdir ki, “nəticə biti yalnız o halda birlikdə olacaq ki, a
rəqəminin biti birlikdə olsun VƏ
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ə |
---|---|
|
|
|
|
|
|
|
|
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ə |
---|---|
|
|
|
|
|
|
|
|
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ə |
---|---|
|
|
|
|
|
|
|
|
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ə |
---|---|
|
|
|
|
|
|
|
|
Bu operator sadəcə biti 1
-dən 0
-a və 0
-dan 1
-ə dəyişir.
GO TO FULL VERSION