Bitwise OR Operator (|)
ये Operator
Use करके हम दो Identifier के Bits पर OR Masking की प्रक्रिया को Apply करते है | OR Masking में दोनों Identifiers के Bits आपस में OR Form में Compare होते है |
यदि
दोनों Identifiers
में से किसी एक भी Identifier में समान Position
पर Bit का मान 1 हो यानी
Bit True हो तो Resultant Bit भी True
होता है , अन्यथा Resultant Bit False हो जाता
है | OR Masking को हम निम्नानुसार समझ सकते है , जहां दो Variables में
19 व 21 मान Stored है |
इन दोनों Identifiers
पर OR Masking की प्रक्रिया को Apply करने पर
निम्नानुसार Operation Perform होते है |
OR Masking में Identifier के Bits पर
निम्नानुसार Table के अनुसार पर प्रक्रिया होती है , जिसमें
दोनों Identifiers के समान Position के
दोनों Bits का आपस में Comparison होता
है और तीसरे Identifier में समान Position पर ही Resultant Bit
Return होता है |
Bitwise OR Operator का प्रयोग किसी Bit Pattern में स्थिति किसी Bit
को ON करने के लिए किया जाता है |
जब
हमें किसी अमुक Bit को किसी Bit –
Pattern में ON करना होता है , तब हमें एक और Bit
– Pattern की जरुरत होती है |
इस
दूसरे Bit
– Pattern को OR Mask Bit Pattern कहते है |
इस
OR
Mask में हमें केवल उसी Bit का मान 1 रखना होता है , जिसे हम हमारे प्रथम Bit – Pattern में
ON करना चाहते हैं |
चलिए , एक उदाहरण
द्वारा OR
Masking की प्रक्रिया को समझते है |
मानलो
की हम Bit
– Pattern 10100110 (value =150) की चौथी Bit को
On करना चाहते है |
इस
जरुरत को पूरा करने के लिए हमें OR Mask के रूप में Bit
– Pattern 00001000 को Use करना होगा |
जब
हमें इस पर OR Masking की प्रक्रिया करनी हो , तो
ये प्रक्रिया निम्नानुसार होगी |
Resultant मान में हम देख सकते है , कि इसके केवल चौथे Bit का
मान ही 0 से 1 हुआ है |
चुंकि
चौथे Bit
– Position का मान 8 होता है , इसलिए Resultant
मान 158 प्राप्त हो रहा है , जो कि Original
मान 150 से केवल 8 ही
ज्यादा है | इस समस्या का Program
निम्नानुसार है |
#include <stdio.h>
#include <conio.h>
main()
{
int x = 150, j;
printf("\n Value of x is %d ", x);
j = x | 8;
printf("\n Forth Bit of value %d is Now On", x);
printf("\n Now the Value of x is %d " , j);
getch();
}
Output
Value of x is 150
Forth Bit of value 150 is Now On
Now the Value of x is 158
No comments