> bcd | दशमलव | बाइनरी <
// BCD - सटीक दशमलव गणना के लिए बाइनरी‑कोडित दशमलव
दशमलव सटीकता
बाइनरी राउंडिंग त्रुटियों से बचते हुए दशमलव सटीकता बनाए रखता है।
निबल एन्कोडिंग
हर दशमलव अंक को ठीक 4 बिट (एक निबल) में एन्कोड किया जाता है।
कई फ़ॉर्मेट
8421, 2421, 5421, Excess-3 और Gray BCD जैसे फ़ॉर्मेट का समर्थन।
>> तकनीकी जानकारी
BCD कैसे काम करता है:
BCD प्रत्येक दशमलव अंक (0–9) को 4 बाइनरी बिट्स में एन्कोड करता है। अलग‑अलग BCD फ़ॉर्मेट विभिन्न बिट वज़न उपयोग करते हैं: 8421 (स्टैंडर्ड), 2421 (सेल्फ‑कॉम्प्लिमेंटिंग), 5421 (बाय‑क्वाइनरी), Excess-3 (हर अंक में 3 जोड़ता है) और Gray BCD (बिट परिवर्तन को न्यूनतम करता है)। पैक्ड BCD दक्षता के लिए प्रति बाइट दो अंकों को संग्रहीत करता है।
BCD फ़ॉर्मेट उदाहरण:
दशमलव: 9 5 3
8421 BCD: 1001 0101 0011
2421 BCD: 1111 1011 0011
5421 BCD: 1100 1000 0011
Excess-3: 1100 1000 0110
Gray BCD: 1101 0111 0010
पैक्ड: 10010101 00110000
(95) (30)
BCD क्यों उपयोग करें:
- >सटीक दशमलव निरूपण की आवश्यकता वाली वित्तीय गणनाएँ
- >डिजिटल डिस्प्ले और सेवन‑सेगमेंट डिकोडर
- >रियल‑टाइम क्लॉक सर्किट
- >कैलकुलेटर और कंप्यूटिंग चिप्स
- >PLC और औद्योगिक नियंत्रण प्रणालियाँ
>> सामान्य प्रश्न
BCD क्या है?
BCD (Binary-Coded Decimal) एक एन्कोडिंग योजना है जिसमें प्रत्येक दशमलव अंक को उसके 4‑बिट बाइनरी मान द्वारा दर्शाया जाता है। इसका उपयोग तब किया जाता है जब दशमलव सटीकता बहुत महत्वपूर्ण हो।
साधारण बाइनरी की जगह BCD क्यों?
BCD दशमलव गणनाओं में राउंडिंग त्रुटियों से बचने में मदद करता है और डिस्प्ले के लिए सीधे दशमलव में रूपांतरण को सरल बनाता है। यह उन वित्तीय अनुप्रयोगों के लिए उपयुक्त है जहाँ बिल्कुल सटीक दशमलव परिणाम चाहिए।
पैक्ड BCD क्या है?
पैक्ड BCD में एक बाइट (8 बिट) में दो दशमलव अंक संग्रहीत होते हैं, जहाँ प्रत्येक निबल एक अंक का प्रतिनिधित्व करता है। यह अनपैक्ड BCD की तुलना में अधिक स्थान‑कुशल है, जो प्रत्येक अंक के लिए पूरा बाइट उपयोग करता है।
BCD के अलग‑अलग फ़ॉर्मेट कौन‑से हैं?
सामान्य BCD फ़ॉर्मेट हैं: 8421 (मानक वेटेड), 2421 (सेल्फ‑कॉम्प्लिमेंटिंग), 5421 (बाय‑क्वाइनरी), Excess-3 (हर अंक में 3 जोड़ता है) और Gray BCD (लगातार मानों के बीच बिट परिवर्तन को कम करता है)।
// त्वरित संदर्भ
| Dec | 8421 | 2421 | Excess-3 |
|---|---|---|---|
| 0 | 0000 | 0000 | 0011 |
| 1 | 0001 | 0001 | 0100 |
| 2 | 0010 | 0010 | 0101 |
| 3 | 0011 | 0011 | 0110 |
| 4 | 0100 | 0100 | 0111 |
| 5 | 0101 | 1011 | 1000 |
| 6 | 0110 | 1100 | 1001 |
| 7 | 0111 | 1101 | 1010 |
| 8 | 1000 | 1110 | 1011 |
| 9 | 1001 | 1111 | 1100 |
// कोड उदाहरण
Decimal 25 BCD 0010 0101 (packed: 0x25)
Binary 0001 1001 (0x19)
Decimal 1234 BCD 0001 0010 0011 0100 (2 bytes, packed)
Overhead 4 bits per digit vs log2(10) = 3.32 bits -> ~20% larger
Add 0x19 + 0x28 = 0x41 -> +6 correction per nibble > 9 -> 0x47
>> और प्रश्न
प्र: BCD क्या है और बाइनरी से कैसे अलग है?
उ: BCD में हर दशमलव अंक अलग से 4 बिट में कोड होता है। 25 बनता है 0010 0101, जबकि शुद्ध बाइनरी 11001 है। दशमलव मान सटीक रहते हैं और दिखाना आसान होता है।
प्र: पैक्ड और अनपैक्ड BCD क्या हैं?
उ: पैक्ड BCD एक बाइट में दो अंक रखता है (0x25 = 25)। अनपैक्ड में हर अंक के लिए एक बाइट होता है; ऊपरी निबल 0 या EBCDIC जैसा ज़ोन चिह्न होता है।
प्र: BCD आज भी क्यों इस्तेमाल होता है?
उ: राउंडिंग त्रुटि रहित सटीक दशमलव गणित के लिए: वित्तीय सिस्टम, कैलकुलेटर, रियल-टाइम क्लॉक, 7-सेगमेंट डिस्प्ले। कीमत: प्रति अंक 3.32 की जगह 4 बिट, यानी लगभग 20% अधिक स्थान।