ALU in computer system and its main functions in Hindi
Makhanlal Chaturvedi University / BCA / Fundamentals of Computer and Information Technology
ALU in Computer System – Functions and Operations Explained
ALU in Computer System in Hindi
जब भी हम Computer System में किसी भी तरह की गणना (calculation) या तर्क (logic) की बात करते हैं, तो सबसे पहले जो हार्डवेयर यूनिट ध्यान में आती है वह है ALU – Arithmetic Logic Unit। यह यूनिट ठीक उसी तरह काम करती है जैसे एक क्लासरूम में शिक्षक कागज़-कलम लेकर जोड़-घटाना या तुलना करके परिणाम निकालता है। बस फर्क इतना है कि ALU यह सब काम nano-seconds के अंदर कर देता है। इस लेख में हम बेहद सरल भाषा में ALU के हर पहलू को समझेंगे ताकि पहली बार पढ़ने वाला छात्र भी बिना किसी परेशानी के इसकी पूरी कार्यप्रणाली grasp कर सके।
हम चार मुख्य हिस्सों पर चर्चा करेंगे: 1) ALU का परिचय और मुख्य कार्य – ALU in Computer System and its Main Functions in Hindi 2) Arithmetic Operations – Arithmetic Operations performed by ALU in Hindi 3) Logical Operations – Logical Operations handled by ALU in Hindi 4) Control Unit से कनेक्शन – ALU and its Connection with Control Unit in Hindi हर सेक्शन में हम उदाहरण, टेबल और छोटे-छोटे पॉइंट्स के माध्यम से विषय को विस्तार से समझेंगे।
ALU in Computer System – Main Functions in Hindi
Arithmetic Logic Unit वह डिजिटल सर्किट है जो कंप्यूटर के Central Processing Unit (CPU) का वह भाग बनाती है जहाँ वास्तविक गणनाएँ एवं लॉजिक परीक्षण होते हैं। ALU को दो प्रमुख हिस्सों में बाँटा जाता है – Arithmetic Section और Logic Section। ये दोनों साथ मिलकर CPU को “सोचने” और “गणना करने” की क्षमता देते हैं।
- डाटा प्रोसेसिंग का केंद्र: CPU के रजिस्टर से डाटा आता है, ALU उस डाटा पर ऑपरेशन करता है और परिणाम वापस रजिस्टर या memory में भेज देता है।
- Arithmetic कार्य: जोड़, घटाना, गुणा, भाग जैसी बेसिक गणनाएँ और उनका विस्तार (जैसे modulus, increment, decrement)।
- Logic कार्य: AND, OR, NOT, XOR इत्यादि boolean operations तथा तुलना (comparison) जैसे “क्या A > B है?” अथवा “क्या दो बिट समान हैं?” जांचना।
- Status Flags सेट करना: हर ऑपरेशन के बाद ALU कुछ flags (Zero, Carry, Overflow, Sign) सेट करती है, जिनसे आगे के निर्णय लिए जाते हैं।
- High-Speed Calculation: ALU खास इलेक्ट्रॉनिक गेट्स से बनी होती है, इसलिए इसकी स्पीड GHz रेंज तक पहुँच सकती है।
सरल शब्दों में कहें तो ALU वही “गणित का जोड़ीदार” है जो लगातार संख्याएँ जोड़ता-घटाता है और “लॉजिक का जज” है जो हर प्रश्न का हाँ-ना में तुरंत फ़ैसला सुनाता है।
Arithmetic Operations performed by ALU in Hindi
जब हम Arithmetic Operations की बात करते हैं, तो विद्यार्थी अक्सर जोड़-घटाना ही सोचते हैं, पर ALU इससे कहीं आगे तक काम करती है। नीचे हमने प्रमुख arithmetic क्रियाएँ एवं उनके उदाहरणों को टेबल सहित समझाया है, ताकि step-by-step आपको हर प्रक्रिया साफ़ दिखे।
| Arithmetic Operation | उदाहरण (Binary) | उद्देश्य / परिणाम |
|---|---|---|
| Addition (संख्या जोड़ना) | 0101 + 0011 → 1000 | 5 और 3 के योग से 8 मिलता है; Carry Flag जाँचती है कि कैरी बना या नहीं। |
| Subtraction (संख्या घटाना) | 0110 – 0010 → 0100 | 6 में से 2 घटाने पर 4; Borrow स्थिति को Carry Flag द्वारा दर्शाया जाता है। |
| Multiplication (गुणा) | 0011 × 0100 → 1100 | 3 × 4 = 12; बड़े रजिस्टर का उपयोग Intermediate कैलकुलेशन के लिए होता है। |
| Division (भाग) | 1100 ÷ 0011 → Quotient = 0100, Remainder = 0000 | 12 ÷ 3 = 4; Divide Flag से Zero Division Error की पहचान होती है। |
| Increment / Decrement | 0101 + 1 → 0110 | Loop काउंटर या ऐड्रस जेनरेशन के लिए तेज़ी से +1, -1 किया जाता है। |
| Modulus (शेषफल) | 14 % 5 → 4 | क्रिप्टोग्राफी एवं Hash Function में अत्यंत आवश्यक ऑपरेशन। |
उपरोक्त टेबल से साफ़ है कि ALU कठिन से कठिन गणितीय कार्य को छोटे-छोटे binary steps में तोड़कर हल करती है। आधुनिक प्रोसेसरों में floating-point ALU (FPU) भी शामिल होता है, जो दशमलव (decimal) आधारित गणनाएँ सटीकता के साथ करता है – जैसे Scientific Calculator।
नीचे दिया गया छोटा-सा C++ कोड दिखाता है कि जब हम sum = a + b; लिखते हैं, तो पर्दे के पीछे यही काम ALU के Adders करते हैं।
// Simple C++ program demonstrating ALU addition
#include <iostream>
int main() {
int a = 5, b = 3;
int sum = a + b; // ALU performs binary addition
std::cout << "Sum = " << sum;
return 0;
}
Logical Operations handled by ALU in Hindi
जहां Arithmetic Operations संख्यात्मक गणना करते हैं, वहीं Logical Operations true / false या 0 / 1 के आधार पर निर्णय लेते हैं। कंप्यूटर के Control Flow (जैसे if-else, loops) को दिशा देने में यही लॉजिक गेट्स महत्वपूर्ण भूमिका निभाते हैं।
| Logical Operation | सिंबल | उदाहरण (Input → Output) | प्रयोग |
|---|---|---|---|
| AND | & | 1 AND 0 → 0 | दो शर्तें एक साथ सत्य हों तभी आगे बढ़ना, bit masking। |
| OR | | | 1 OR 0 → 1 | किसी भी एक शर्त के सत्य होने पर निर्णय, Interrupt Handling। |
| XOR | ^ | 1 XOR 1 → 0 | Parity Check, Cryptography में Key Mixing। |
| NOT | ~ | NOT 1 → 0 | बिट का उलटा निकालना, Complement गणनाएँ। |
| Shift Left | << | 0010 << 1 → 0100 | गुणा (×2) के तेज़ तरीक़े, data packing। |
| Shift Right | >> | 0100 >> 1 → 0010 | भाग (/2) के तेज़ तरीक़े, Sign Extension। |
| Compare (CMP) | — | 5 CMP 3 → Greater Flag | Sorting, Conditional Jump के लिए Decision। |
ये Logical Operations सीधे-सीधे boolean algebra के नियमों पर आधारित होते हैं। जब भी प्रोग्राम में if(x > y) लिखा जाता है, ALU अंदर ही अंदर Subtract & Check Flags या Compare ऑपरेशन के माध्यम से तय करती है कि कूदना है या नहीं।
ALU and its Connection with Control Unit in Hindi
कंप्यूटर की Control Unit (CU) को आप orchestra के conductor की तरह समझ सकते हैं, जो हर सेकंड बताता है कि कौन-सा वाद्य कहाँ बजना चाहिए। ALU इसी orchestra का एक प्रमुख वाद्य (instrument) है जो CU के इशारे पर गाता है।
- Instruction Fetch: CU सबसे पहले Memory से instruction लाती है और उसका opcode डिकोड करती है। यदि opcode कहता है “ADD”, तो CU तुरंत ALU को सक्रिय करती है।
- Operand Routing: CU रजिस्टर या memory से operands उठा कर ALU के input buffers तक पहुँचाती है।
- Operation Control Signals: CU ALU को बताती है कि क्या करना है – जोड़ना, घटाना, OR, XOR आदि। यह काम control lines द्वारा होता है (उदाहरण: ALU_OP[3:0])।
- Result Handling: जैसे ही ALU रिज़ल्ट तैयार करती है, CU उसे स्वीकारती है और अगली स्टेज (रजिस्टर, Cache, Memory या I/O) तक भेजती है।
- Flags Monitoring: Zero, Carry, Overflow जैसे फ्लैग्स CU के status register में सेट होते हैं, ताकि अगला निर्णय (branch, loop) सही ढंग से लिया जा सके।
यदि इसे pipeline architecture से जोड़ कर देखें, तो Control Unit “टिक-टिक” clock pulse पर प्रत्येक स्टेज का तालमेल बिठाती है, और ALU वहीँ बीच की स्टेज है जो रॉ डाटा को परिणाम में रूपांतरित करती है। यही कारण है कि CU-ALU कनेक्शन जितना तेज़ और व्यापक होगा, कंप्यूटर उतना ही high-performance होगा।
आज के multi-core processors में प्रत्येक कोर की अपनी ALU और CU हो सकती है, जिससे समानांतर (parallel) प्रोसेसिंग संभव होती है। इसका सीधा लाभ हमें तेज़ software execution और बेहतरीन user-experience के रूप में मिलता है।