CPU में ALU के अंकगणितीय संचालन (Arithmetic Operations)
अंकगणितीय लॉजिक यूनिट (ALU) किसी भी कंप्यूटर प्रोसेसर का एक महत्वपूर्ण घटक है। यह यूनिट विभिन्न प्रकार के अंकगणितीय और तार्किक (लॉजिक) ऑपरेशनों को निष्पादित करने के लिए जिम्मेदार होती है। आइए हम इस यूनिट के कार्य, संरचना, और इसके महत्व के बारे में विस्तार से समझते हैं।
विषयसूची
1. Arithmetic Logic Unit : एक परिचय
2. CPU में ALU के अंकगणितीय संचालन (Arithmetic Operations)
3. निष्कर्ष
Arithmetic
Logic Unit : एक परिचय
ALU कंप्यूटर का वह हिस्सा है जो गणनाएँ करता है। यह मुख्य रूप से दो प्रकार के ऑपरेशनों को संभालता है:
अंकगणितीय ऑपरेशन्स: जैसे जोड़, घटाना, गुणा और भाग।
लॉजिक ऑपरेशन्स: जैसे AND, OR, NOT, XOR आदि।
ALU का कार्य
ALU का मुख्य कार्य डेटा प्रोसेसिंग है। इसे एक या एक से अधिक ऑपरेशन्स के लिए डिज़ाइन किया गया है। ALU का काम निम्नलिखित कार्यों को शामिल करता है:
अंकगणितीय ऑपरेशन्स: इसमें बाइनरी नंबरों की जोड़, घटाना, गुणा और भाग शामिल हैं। उदाहरण के लिए, जब हम किसी दो नंबरों को जोड़ते हैं, तो ALU इन नंबरों को बाइनरी में बदलकर जोड़ता है और परिणाम देता है।
लॉजिक ऑपरेशन्स: इसमें लॉजिक गेट्स का उपयोग होता है। AND, OR, NOT और XOR जैसे ऑपरेशन्स को निष्पादित किया जाता है।
शिफ्ट ऑपरेशन्स: इसमें बाइनरी नंबरों के बिट्स को बाईं या दाईं ओर शिफ्ट किया जाता है।
ALU की संरचना
ALU की संरचना में कई घटक शामिल होते हैं, जिनमें से कुछ मुख्य घटक निम्नलिखित हैं:
ऑपरेटर कंट्रोल यूनिट: यह यूनिट निर्धारित करती है कि कौन सा ऑपरेशन करना है। यह निर्देशों को पढ़कर ऑपरेशन को नियंत्रित करती है।
इनपुट और आउटपुट रजिस्टर: इन रजिस्टर्स में ALU के लिए डेटा इनपुट और आउटपुट होता है।
एडर और सब्ट्रैक्टर: ये घटक जोड़ और घटाने के लिए उपयोग होते हैं।
लॉजिक गेट्स: ये गेट्स लॉजिक ऑपरेशन्स को निष्पादित करने के लिए उपयोग होते हैं।
ALU का महत्व
ALU के बिना, कंप्यूटर किसी भी प्रकार की गणना या तार्किक निर्णय नहीं कर सकता। यह यूनिट कंप्यूटर को डेटा प्रोसेसिंग और निष्पादन में सक्षम बनाती है। ALU का महत्व निम्नलिखित बिंदुओं में स्पष्ट होता है:
प्रदर्शन में सुधार: तेज और कुशल ALU कंप्यूटर के प्रदर्शन को बढ़ाता है, जिससे अधिक जटिल और बड़े डेटा सेट्स को प्रोसेस करना संभव होता है।
विविधता: ALU विभिन्न प्रकार के ऑपरेशन्स को निष्पादित कर सकता है, जिससे यह विभिन्न प्रकार के कार्यों के लिए उपयुक्त होता है।
सटीकता: ALU द्वारा की गई गणनाएँ और लॉजिक ऑपरेशन्स सटीक और भरोसेमंद होते हैं।
CPU में ALU के अंकगणितीय संचालन (Arithmetic Operations)
केंद्रीय प्रसंस्करण इकाई (सीपीयू) कंप्यूटर प्रणाली का महत्वपूर्ण हिस्सा
है, जो विभिन्न संचालन
को निष्पादित करने के लिए
जिम्मेदार होता है। इसमें
अंकगणितीय और तार्किक इकाई
(एएलयू) शामिल होती है, जो
सभी अंकगणितीय और तार्किक कार्यों
को संभालती है। एएलयू के
बिना, सीपीयू कोई भी गणना
या निर्णय लेने में सक्षम
नहीं हो सकता। इस
लेख में, हम सीपीयू
में एएलयू के अंकगणितीय संचालन
के बारे में विस्तार
से चर्चा करेंगे।
ALU क्या है?
अंकगणितीय और तार्किक इकाई
(एएलयू) सीपीयू का एक प्रमुख
घटक है, जो अंकगणितीय
(जैसे जोड़, घटाव, गुणा, और भाग) और
तार्किक (जैसे AND, OR, NOT, और XOR) संचालन करता है। एएलयू
का मुख्य उद्देश्य डेटा को प्रोसेस
करना और परिणाम उत्पन्न
करना होता है।
ALU के अंकगणितीय संचालन
1. जोड़ (Addition)
जोड़ सबसे बुनियादी और
महत्वपूर्ण अंकगणितीय संचालन है। एएलयू दो
इनपुट अंकों को जोड़ता है
और परिणाम देता है। यह
ऑपरेशन कंप्यूटर में डेटा को
जोड़ने, गिनने और गणना करने
के लिए प्रयोग किया
जाता है।
एएलयू में जोड़ (Addition) का संचालन
जोड़ (Addition)
एएलयू द्वारा किए जाने वाले सबसे बुनियादी और महत्वपूर्ण अंकगणितीय संचालन में से एक है। यह ऑपरेशन सीपीयू की विभिन्न प्रक्रियाओं के लिए आवश्यक है, जैसे डेटा प्रोसेसिंग, गणना, और जानकारी को संचित करना। आइए देखें कि एएलयू में जोड़ कैसे काम करता है:
जोड़ की प्रक्रिया
- इनपुट अंकों का चयन (Selection of Input Operands):
- एएलयू दो अंकों (ऑपरेन्ड्स) को इनपुट के रूप में प्राप्त करता है। ये ऑपरेन्ड्स रजिस्टरों, मेमोरी लोकेशनों, या सीधे निर्देशों से आ सकते हैं।
- जोड़ संचालन (Addition Operation):
- इनपुट अंकों को एएलयू में जोड़ने के लिए विशेष सर्किट्री होती है। सबसे सामान्य सर्किट्री 'फुल ऐडर' (Full Adder) होती है, जो दो बिट्स और एक कैरी बिट को जोड़ने में सक्षम होती है।
- फुल ऐडर सर्किट में तीन इनपुट होते हैं: दो अंकों के बिट्स (A और B) और एक कैरी इनपुट (Carry-In)।
- ये इनपुट एएलयू में फुल ऐडर लॉजिक गेट्स के माध्यम से प्रवाहित होते हैं, जो बिट्स को जोड़ते हैं और परिणाम (Sum) और कैरी आउटपुट (Carry-Out) उत्पन्न करते हैं।
- कैरी को प्रबंधित करना
(Managing Carry):
- अगर परिणाम अधिक बिट्स में आता है, तो एक कैरी बिट अगले उच्चतर बिट को जोड़ने के लिए उपयोग किया जाता है। यह प्रक्रिया बिट-दर-बिट आगे बढ़ती है।
- उदाहरण के लिए, यदि दो 8-बिट अंकों को जोड़ा जा रहा है और किसी स्थान पर कैरी उत्पन्न होता है, तो यह कैरी अगली उच्चतम बिट के जोड़ में शामिल हो जाएगा।
- परिणाम (Result):
- सभी बिट्स को जोड़ने के बाद, अंतिम परिणाम एएलयू से आउटपुट के रूप में प्राप्त होता है।
- परिणाम को रजिस्टर या मेमोरी में संग्रहीत किया जा सकता है या आगे के प्रसंस्करण के लिए उपयोग किया जा सकता है।
उदाहरण
मान लीजिए हमें 4-बिट अंकों 1010 (10 दशमलव में) और 0111 (7 दशमलव में) को जोड़ना है:
1010
+ 0111
------
10001
- 4 बिट्स को जोड़ते समय, हम देखते हैं कि सबसे उच्चतम बिट में कैरी उत्पन्न होता है। परिणाम 5 बिट्स में आता है: 10001 (17 दशमलव में)।
0+1=1
0+0=0
1+0=1
1+1=10
2. घटाव
(Subtraction)
घटाव भी एक महत्वपूर्ण
अंकगणितीय संचालन है, जिसमें एएलयू
दो अंकों के बीच का
अंतर निकालता है। यह ऑपरेशन
डेटा के अंतर की
गणना, तुलना, और अन्य गणनाओं
के लिए उपयोग किया
जाता है।
एएलयू में घटाव (Subtraction) का संचालन
घटाव
(Subtraction) एएलयू द्वारा किए जाने वाले महत्वपूर्ण अंकगणितीय संचालन में से एक है। यह संचालन डेटा के अंतर की गणना, तुलना और अन्य गणनाओं के लिए महत्वपूर्ण होता है। आइए देखें कि एएलयू में घटाव कैसे काम करता है:
घटाव की प्रक्रिया
- इनपुट अंकों का चयन (Selection of Input Operands):
- एएलयू दो अंकों (ऑपरेन्ड्स) को इनपुट के रूप में प्राप्त करता है। ये ऑपरेन्ड्स रजिस्टरों, मेमोरी लोकेशनों, या सीधे निर्देशों से आ सकते हैं।
- घटाव में, एक अंक (मिन्यूएंड) से दूसरे अंक (सबस्ट्रेंड) को घटाया जाता है।
- दो's कंप्लीमेंट का उपयोग (Using Two's Complement):
- कंप्यूटर प्रणाली में घटाव के लिए दो's कंप्लीमेंट विधि का उपयोग किया जाता है। इस विधि में, सबस्ट्रेंड को नेगेटिव (ऋणात्मक) बनाने के लिए दो's कंप्लीमेंट का उपयोग किया जाता है, और फिर उसे मिन्यूएंड में जोड़ा जाता है।
- दो's कंप्लीमेंट प्राप्त करने के लिए, सबसे पहले सबस्ट्रेंड का एक's कंप्लीमेंट (बिट्स को उल्टा करना) लिया जाता है और फिर उसमें 1 जोड़ा जाता है।
- जोड़ संचालन (Addition Operation):
- नेगेटिव सबस्ट्रेंड को मिन्यूएंड के साथ जोड़ा जाता है। यह प्रक्रिया एएलयू के अंदर फुल ऐडर सर्किट द्वारा की जाती है, जैसे कि जोड़ संचालन में किया जाता है।
- एएलयू इनपुट अंकों को जोड़ने के लिए फुल ऐडर लॉजिक गेट्स का उपयोग करता है, जो बिट्स को जोड़ते हैं और परिणाम (Sum) और कैरी आउटपुट (Carry-Out) उत्पन्न करते हैं।
- परिणाम (Result):
- सभी बिट्स को जोड़ने के बाद, अंतिम परिणाम एएलयू से आउटपुट के रूप में प्राप्त होता है।
- परिणाम को रजिस्टर या मेमोरी में संग्रहीत किया जा सकता है या आगे के प्रसंस्करण के लिए उपयोग किया जा सकता है।
उदाहरण
मान लीजिए हमें 4-बिट अंकों 1010 (10 दशमलव में) और 0111 (7 दशमलव में) को घटाना है:
1010
- 0111
पहले, 0111 का दो's कंप्लीमेंट प्राप्त करें:
0111 (सबस्ट्रेंड)
1000 (एक's कंप्लीमेंट)
+ 1
------
1001 (दो's कंप्लीमेंट)
अब, मिन्यूएंड 1010 में 1001 को जोड़ें:
1010
+ 1001
------
10011
अतिरिक्त बिट को हटा दें:
0011 (अंतिम परिणाम, 3 दशमलव में)
0-0=0
0-1=1 ( बायीं तरफ से 1 लेना है )
1-0=1
1-1=0
3. गुणा
(Multiplication)
गुणा ऑपरेशन में, एएलयू दो
अंकों को गुणा करता
है। यह ऑपरेशन विशेष
रूप से जटिल गणनाओं,
ग्राफिक्स प्रोसेसिंग, और साइंटिफिक कैलकुलेशन्स
के लिए महत्वपूर्ण है।
एएलयू में गुणा (Multiplication) का संचालन
गुणा
(Multiplication) एएलयू द्वारा किए जाने वाले महत्वपूर्ण अंकगणितीय संचालन में से एक है। यह संचालन विशेष रूप से जटिल गणनाओं, ग्राफिक्स प्रोसेसिंग, और साइंटिफिक कैलकुलेशन्स के लिए महत्वपूर्ण है। आइए देखें कि एएलयू में गुणा कैसे काम करता है:
गुणा की प्रक्रिया
- इनपुट अंकों का चयन (Selection of Input Operands):
- एएलयू दो अंकों (ऑपरेन्ड्स) को इनपुट के रूप में प्राप्त करता है। ये ऑपरेन्ड्स रजिस्टरों, मेमोरी लोकेशनों, या सीधे निर्देशों से आ सकते हैं।
- गुणा में, एक अंक को गुणक (Multiplier) और दूसरे अंक को गुणनखंड (Multiplicand) के रूप में उपयोग किया जाता है।
- बाइनरी गुणा (Binary Multiplication):
- बाइनरी गुणा दशमलव गुणा के समान होता है, लेकिन इसे बाइनरी अंकों के साथ किया जाता है। इसमें गुणनखंड को प्रत्येक गुणक के बिट के साथ गुणा किया जाता है और फिर इन आंशिक उत्पादों को जोड़कर अंतिम उत्पाद प्राप्त किया जाता है।
- बाइनरी गुणा के लिए शिफ्ट और ऐड विधि (Shift and Add Method) का उपयोग किया जाता है। इसमें गुणनखंड को गुणक के प्रत्येक बिट के लिए शिफ्ट किया जाता है और यदि गुणक का बिट 1 होता है, तो गुणनखंड को जोड़ दिया जाता है।
- शिफ्ट और ऐड विधि (Shift and Add Method):
- सबसे पहले, गुणक के सबसे कम बिट से शुरू करते हुए प्रत्येक बिट के लिए गुणनखंड को शिफ्ट किया जाता है।
- अगर बिट 1 होता है, तो शिफ्ट किए गए गुणनखंड को आंशिक उत्पाद में जोड़ दिया जाता है।
- इस प्रक्रिया को गुणक के सभी बिट्स के लिए दोहराया जाता है और अंत में सभी आंशिक उत्पादों को जोड़कर अंतिम उत्पाद प्राप्त किया जाता है।
उदाहरण
मान लीजिए हमें 4-बिट अंकों 1010 (10 दशमलव में) और 0011 (3 दशमलव में) को गुणा करना है:
1010
(गुणनखंड)
x 0011 (गुणक)
-------
1010
(गुणनखंड शिफ्ट किए बिना गुणक के सबसे कम बिट के लिए)
10100
(गुणनखंड को एक स्थान बाएँ शिफ्ट करते हुए गुणक के दूसरे बिट के लिए)
-------
11110
(आंशिक उत्पादों को जोड़कर अंतिम उत्पाद, 30 दशमलव में)
4. भाग (Division)
भाग ऑपरेशन में, एएलयू एक
अंक को दूसरे अंक
से विभाजित करता है। यह
ऑपरेशन डेटा को विभाजित
करने, औसत निकालने, और
अन्य विभाजन सम्बंधित गणनाओं के लिए प्रयोग
किया जाता है।
एएलयू में भाग (Division) का संचालन
भाग (Division)
एएलयू द्वारा किए जाने वाले महत्वपूर्ण अंकगणितीय संचालन में से एक है। यह ऑपरेशन डेटा को विभाजित करने, औसत निकालने, और अन्य विभाजन संबंधित गणनाओं के लिए उपयोग किया जाता है। आइए देखें कि एएलयू में भाग कैसे काम करता है:
भाग की प्रक्रिया
- इनपुट अंकों का चयन (Selection of Input Operands):
- एएलयू दो अंकों (ऑपरेन्ड्स) को इनपुट के रूप में प्राप्त करता है। ये ऑपरेन्ड्स रजिस्टरों, मेमोरी लोकेशनों, या सीधे निर्देशों से आ सकते हैं।
- भाग में, एक अंक को भाजक (Dividend) और दूसरे अंक को भागकर्ता (Divisor) के रूप में उपयोग किया जाता है।
- बाइनरी भाग (Binary Division):
- बाइनरी भाग दशमलव भाग के समान होता है, लेकिन इसे बाइनरी अंकों के साथ किया जाता है। इसमें भाजक को भागकर्ता से विभाजित किया जाता है और शेषफल (Quotient) और शेष (Remainder) प्राप्त होता है।
- बाइनरी भाग के लिए पुनरावृत्त घटाव विधि (Repeated Subtraction
Method) या लॉन्ग डिवीजन विधि का उपयोग किया जाता है।
- लॉन्ग डिवीजन विधि (Long
Division Method):
- सबसे पहले, भाजक को भागकर्ता के साथ विभाजित किया जाता है और शेषफल का सबसे अधिक बिट प्राप्त किया जाता है।
- फिर, शेषफल को भागकर्ता से गुणा करके प्राप्त किया जाता है और परिणाम को भाजक से घटाया जाता है।
- इस प्रक्रिया को शेषफल के प्रत्येक बिट के लिए दोहराया जाता है और अंत में सभी शेषफल बिट्स को मिलाकर अंतिम शेषफल प्राप्त किया जाता है।
उदाहरण
मान लीजिए हमें 8-बिट अंकों 101100 (44 दशमलव में) और 110 (6 दशमलव में) को विभाजित करना है:
101100 (44)
÷ 110 (6)
--------
111 (शेषफल, 7 दशमलव में)
010 (शेष, 2 दशमलव में)
स्टेप-बाय-स्टेप प्रक्रिया:
1. 101100 में से 110 को घटाएं:
1011
-110
01 (भागफल)
0101 (शेषफल)
2. भाजक का अगला अंक उपयोग करेंगे
0101 (शेषफल) में भाजक का अगला शुन्य जोड़ेंगे
पुनरावृत्त घटाव करते रहें:
01010
-110
0100 (शेषफल)
नया भागफल है 011 (पहले स्टेप का 01 और दूसरे स्टेप का 1 मिल कर हुआ 011 )
3. जब
तक भाग समाप्त न
हो जाए, प्रक्रिया को
दोहराएं।
भाजक का अगला अंक उपयोग करेंगे
0100 (शेषफल) में भाजक का आखरी शुन्य जोड़ेंगे
01000
-110
10 (शेषफल)
नया भागफल है 0111 (पहले स्टेप का 01 , दूसरे स्टेप का 1 , तीसरे स्टेप का 1 मिल कर हुआ 0111 )
नोट : भागफल केवल 0 और 1 इन्ही दोनों में से कोई एक होगा क्युकी उदहारण बाइनरी में है
निष्कर्ष
एएलयू सीपीयू का एक महत्वपूर्ण
घटक है, जो विभिन्न
अंकगणितीय और तार्किक संचालन
को संभालता है। जोड़, घटाव,
गुणा, और भाग जैसे
अंकगणितीय संचालन एएलयू की मुख्य क्षमताओं
में शामिल हैं। इन संचालन
के बिना, कोई भी सीपीयू
प्रभावी ढंग से कार्य
नहीं कर सकता। एएलयू
के माध्यम से, कंप्यूटर जटिल
गणनाओं को तेजी से
और सटीक रूप से
निष्पादित कर सकता है।
अंकगणितीय लॉजिक यूनिट (ALU) किसी भी कंप्यूटर सिस्टम का एक अपरिहार्य हिस्सा है। यह गणनाओं और तार्किक निर्णयों को संभालता है, जो कंप्यूटर के कार्य निष्पादन में महत्वपूर्ण भूमिका निभाते हैं। ALU की दक्षता और गति कंप्यूटर की समग्र प्रदर्शन पर महत्वपूर्ण प्रभाव डालती है। इसलिए, ALU को समझना और इसके कार्यप्रणाली की जानकारी होना कंप्यूटर विज्ञान के क्षेत्र में महत्वपूर्ण है।
जोड़ (Addition)
एएलयू का एक मौलिक संचालन है, जो सीपीयू को विभिन्न गणनाओं को सटीकता और दक्षता के साथ करने की अनुमति देता है। एएलयू के फुल ऐडर सर्किट के माध्यम से, बिट-दर-बिट जोड़ को संभाला जाता है, जिससे जटिल गणनाएं भी सरल हो जाती हैं। इस प्रकार, जोड़ संचालन सीपीयू की गणना शक्ति का एक महत्वपूर्ण हिस्सा है।
घटाव
(Subtraction) एएलयू का एक महत्वपूर्ण संचालन है, जो सीपीयू को विभिन्न गणनाओं को सटीकता और दक्षता के साथ करने की अनुमति देता है। दो's कंप्लीमेंट विधि के माध्यम से, नेगेटिव सबस्ट्रेंड को मिन्यूएंड के साथ जोड़कर घटाव किया जाता है। इस प्रकार, घटाव संचालन सीपीयू की गणना शक्ति का एक महत्वपूर्ण हिस्सा है।
गुणा
(Multiplication) एएलयू का एक महत्वपूर्ण संचालन है, जो सीपीयू को विभिन्न गणनाओं को सटीकता और दक्षता के साथ करने की अनुमति देता है। बाइनरी गुणा और शिफ्ट और ऐड विधि के माध्यम से, बाइनरी अंकों का गुणा किया जाता है और जटिल गणनाएं भी सरल हो जाती हैं। इस प्रकार, गुणा संचालन सीपीयू की गणना शक्ति का एक महत्वपूर्ण हिस्सा है।
भाग (Division) एएलयू का एक महत्वपूर्ण
संचालन है, जो सीपीयू
को विभिन्न गणनाओं को सटीकता और
दक्षता के साथ करने
की अनुमति देता है। बाइनरी
भाग और लॉन्ग डिवीजन
विधि के माध्यम से,
बाइनरी अंकों का विभाजन किया
जाता है और जटिल
गणनाएं भी सरल हो
जाती हैं। इस प्रकार,
भाग संचालन सीपीयू की गणना शक्ति
का एक महत्वपूर्ण हिस्सा
है।