UnitConv
बिटवाइज़

बिटवाइज़ कैलकुलेटर

32-बिट पूर्णांकों पर AND, OR, XOR, NOT और बिट शिफ्ट, बिट-दर-बिट दृश्य के साथ

ऑपरेंड

ऑपरेंड A
ऑपरेंड B

संक्रिया

परिणाम

12 & 10
दशमलव8
अचिह्नित8
हेक्स0x00000008
बाइनरी00000000000000000000000000001000

परिणाम का 32-बिट प्रारूप

0
31
0
30
0
29
0
28
0
27
0
26
0
25
0
24
0
23
0
22
0
21
0
20
0
19
0
18
0
17
0
16
0
15
0
14
0
13
0
12
0
11
0
10
0
9
0
8
0
7
0
6
0
5
0
4
1
3
0
2
0
1
0
0
MSB (bit 31)LSB (bit 0)

मानों को 32-बिट पूर्णांक माना जाता है। चिह्नित दशमलव सबसे ऊपरी बिट को चिह्न (टू'ज़ कॉम्प्लीमेंट) मानता है; अचिह्नित दशमलव सभी 32 बिट को धनात्मक परिमाण मानता है। दायाँ शिफ्ट तार्किक है (बाईं ओर से शून्य भरते हैं)।

इस टूल के बारे में

बिटवाइज़ कैलकुलेटर डेवलपर्स और कंप्यूटर विज्ञान के विद्यार्थियों को दो पूर्णांकों पर AND, OR, XOR, NOT और बाएँ/दाएँ बिट शिफ्ट की गणना करने देता है। प्रत्येक ऑपरेंड को बाइनरी, दशमलव या हेक्साडेसिमल में दर्ज करें और परिणाम तीनों आधारों में एक साथ दिखता है, साथ ही एक लाइव 32-बिट मानचित्र जो ठीक-ठीक दिखाता है कि कौन-से बिट बदलते हैं। यह फ़्लैग और बिटमास्क की डिबगिंग, अनुमतियों के साथ काम करने, डेटा पैक करने और यह सीखने के लिए बना है कि कंप्यूटर सबसे निचले स्तर पर बिट्स को कैसे संभालते हैं।

उपयोग कैसे करें

  1. 1 ऑपरेंड A दर्ज करें और उसका आधार चुनें (बाइनरी, दशमलव या हेक्स)।
  2. 2 एक संक्रिया चुनें: AND, OR, XOR, बाएँ/दाएँ शिफ्ट, या एकल NOT।
  3. 3 दो-ऑपरेंड संक्रियाओं के लिए ऑपरेंड B दर्ज करें; शिफ्ट के लिए कितने बिट शिफ्ट करना है यह दर्ज करें।
  4. 4 परिणाम को दशमलव, अचिह्नित, हेक्स और बाइनरी में पढ़ें और हाइलाइट किए गए बिट देखें।

यह कैसे काम करता है

बिटवाइज़ संक्रियाएँ 32 में से प्रत्येक बिट पर स्वतंत्र रूप से काम करती हैं। AND किसी परिणाम बिट को केवल तभी 1 करता है जब दोनों इनपुट बिट 1 हों, इसलिए इसका उपयोग चुने हुए बिट को मास्क (बनाए रखने) के लिए होता है। OR किसी बिट को 1 करता है जब कोई एक इनपुट बिट 1 हो, इसलिए इसका उपयोग फ़्लैग चालू करने के लिए होता है। XOR किसी बिट को केवल तभी 1 करता है जब दोनों इनपुट बिट भिन्न हों, जो इसे टॉगल करने और सरल चेकसम के लिए उत्तम बनाता है। NOT एकल है: यह हर बिट को पलटता है, 0 को 1 और 1 को 0 बनाता है। बायाँ शिफ्ट (<<) सभी बिटों को सबसे महत्वपूर्ण छोर की ओर खिसकाता है और रिक्त स्थान शून्य से भरता है, जो हर स्थान पर दो से गुणा करता है; तार्किक दायाँ शिफ्ट (>>) उन्हें दूसरी ओर खिसकाता है और शून्य से भरता है। चूँकि ऋणात्मक संख्याएँ टू'ज़ कॉम्प्लीमेंट में संग्रहीत होती हैं, वही 32 बिट चिह्नित मान (ऊपरी बिट चिह्न है) या अचिह्नित मान के रूप में पढ़े जा सकते हैं, इसीलिए यह टूल दोनों दिखाता है। उदाहरण के लिए 12 AND 10 = 8, 12 OR 10 = 14, 12 XOR 10 = 6, 1 << 4 = 16, और NOT 0 सभी एक होते हैं, यानी चिह्नित में -1 या अचिह्नित में 4294967295।

अक्सर पूछे जाने वाले प्रश्न

AND, OR और XOR में क्या अंतर है?

AND किसी बिट को केवल तभी रखता है जब दोनों ऑपरेंड में वह सेट हो, इसलिए यह मास्क से बिट साफ़ करने या जाँचने के लिए है। OR किसी बिट को सेट करता है जब किसी एक ऑपरेंड में वह हो, इसलिए यह बिट चालू करने के लिए है। XOR किसी बिट को केवल तभी सेट करता है जब ठीक एक ऑपरेंड में वह हो, जो बिट टॉगल करता है और अंतर पहचानता है।

NOT 0 -1 और 4294967295 दोनों क्यों दिखाता है?

NOT सभी 32 बिट पलट देता है, इसलिए 0 बत्तीस एक बन जाता है। इस प्रारूप को चिह्नित टू'ज़ कॉम्प्लीमेंट पूर्णांक के रूप में पढ़ने पर -1, और अचिह्नित 32-बिट पूर्णांक के रूप में 4294967295 होता है। दोनों एक ही बिट का वर्णन करते हैं।

बाएँ या दाएँ शिफ्ट वास्तव में क्या करता है?

n से बायाँ शिफ्ट हर बिट को n स्थान सबसे महत्वपूर्ण छोर की ओर खिसकाता है और शून्य भरता है, जो 2 की n घात से गुणा करता है। n से तार्किक दायाँ शिफ्ट उन्हें दूसरी ओर खिसकाता है और शून्य भरता है, जो अऋणात्मक मानों को 2 की n घात से भाग देता है।

सब कुछ 32 बिट तक सीमित क्यों है?

JavaScript के बिटवाइज़ ऑपरेटर और अधिकांश CPU पूर्णांक रजिस्टर 32-बिट शब्दों पर काम करते हैं, और यह टूल उसी का अनुसरण करता है। शिफ्ट की मात्रा 32 से मोड्यूलो ली जाती है, और मान 32-बिट सीमा के भीतर लपेट जाते हैं, ठीक जैसे C, Java या JavaScript में।

संबंधित टूल और उपयोग

किसी एकल मान को बाइनरी, अष्टक, दशमलव और हेक्स के बीच बदलने के लिए संख्या आधार परिवर्तक का उपयोग करें। वर्ण कोड के लिए ASCII परिवर्तक देखें, और रंग मास्क के लिए कलर कोड परिवर्तक आज़माएँ।