hello friends, आज मैं इस post में आपको what is instruction format in hindi & its types (इंस्ट्रक्शन फॉरमेट क्या है और इसके प्रकार क्या हैं?) के बारें में बताऊंगा तो चलिए start करते है:-
- 8085 का block diagram
- 8085 का पिन डायग्राम को पढ़िए।
Instruction format in hindi
instruction format या instruction code, एक bits का समूह होता है जिसका प्रयोग computer में स्टोर data में विशेष operation को पूरा करने के लिए किया जाता है.
माइक्रोप्रोसेसर memory से instruction को fetch करता है और instruction को execute करने के लिए bits को decode करता है.
एक instruction सामन्यतया निम्नलिखित fields से मिलकर बना होता है:-
- operation field – यह जिस operation को perform करना होता है उसे specify करता है. जैसे:- जोड़ना, घटाना आदि.
- address field – यह operand की location को स्टोर किये रहता है.
- mode field – यह field यह specify करता है operand कैसे प्राप्त होगा या निर्धारित होगा.
एक instruction format को design करना बहुत ही मुश्किल होता है क्योंकि इसमें बहुत सारें problems आते है. कुछ problems निम्नलिखित हैं:-
- instruction length: यह format design का सबसे सामान्य problem है. instruction जितना ज्यादा लम्बा होगा उसे fetch करने में उतना अधिक समय लगेगा.
- memory size: यदि memory का size अधिक होगा तो address field में अधिक bits की आवश्यकता होगी.
- memory organisation: यदि सिस्टम virtual memory को support करता है तो यह physical memory से अधिक होगी.
- memory transfer length: instruction length जो है वह data bus के समान होनी चाहिए या फिर इसके multiple होनी चाहिए.
एक instruction अलग-अलग length का हो सकता है. यह इस बात पर निर्भर करता है कि instruction ने कितने addresses को स्टोर किया हुआ है. address fields के आधार पर CPU organization तीन प्रकार का होता है.
- single accumulator organization
- general register organization
- stack organization
पहले organization में एक विशेष प्रकार के register का प्रयोग किया जाता है जिसे accumulator कहते है.
दूसरे organization में, बहुत सारें registers का प्रयोग computation के लिए किया जाता है. तीसरे organization में stack पर आधारित ऑपरेशन को पूरा किया जाता है.
Types of address instructions
ये निम्नलिखित चार प्रकार के होते हैं:-
-
Zero Address Instructions
stack पर आधारित कंप्यूटर जो है वह instruction में address field का प्रयोग नही करता है. एक expression को evaluate करने के लिए सबसे पहले इसे reverse polish notation (postfix notation) में बदलना पड़ता है.
माना expression: X = (A+B) * (C+D)
postfixed: X = AB + CD+*
TOP का मतलब है- top of stack
M[X] एक memory location है.
- One address instructions
यह data manipulation के लिए implied Accumulator का प्रयोग करता है. इसमें एक operand, accumulator में होता है. और दूसरा operand, रजिस्टर या मैमोरी लोकेशन में होता है. implied का मतलब है कि processor पहले से जानता है एक operand, accumulator में है. इसलिए उसे specify करने की कोई जरूरत नही होती है.
expression: X = (A+B) * (C+D)
AC एक accumulator है.
M[ ] एक memory location है.
M[T] एक temporary location है.
-
Two address instructions
ज्यादातर इसका प्रयोग commercial computers में किया जाता है. यहाँ instruction में दो addresses को specify किया जाता है. one address instruction में result को accumulator में स्टोर किया जाता है परन्तु two address instruction में result को अलग अलग locations में स्टोर किया जाता है.
expression: X = (A+B) * (C+D)
R1, और R2 रजिस्टर है.
M[ ] एक मैमोरी लोकेशन है.
-
Three address instructions
register या memory location को specify करने के लिए इसके पास तीन address fields होते है. यहाँ program का size कम होता है. परन्तु bits की संख्या प्रत्येक instruction में बढती जाती है. ये instructions प्रोग्राम को create करना आसान बना देते हैं परन्तु इसका मतलब यह नही है कि प्रोग्राम run करने की गति बढ़ जाएगी. क्योंकि instruction केवल ज्यादा information को store किये हुए है लेकिन micro operation केवल एक cycle में ही परफॉर्म होते है.
expression: X = (A+B) * (C+D)
R1, और R2 रजिस्टर है.
M[ ] एक memory location है.
NOTE:- अगर यह article आपके लिए उपयोगी रहा है तो इसे अपने दोस्तों के साथ अवश्य share कीजिये. और आपके computer architecture और microprocessor को लेकर कोई सवाल है तो आप comment के माध्यम से बता सकते हैं. thanks.