Macros হলো Assembly Language-এ ব্যবহৃত একটি সরঞ্জাম যা কোডের একটি অংশকে সংজ্ঞায়িত করে এবং প্রোগ্রামে একাধিক স্থানে পুনরায় ব্যবহারের জন্য সহজ করে। এটি একটি ধরনের কোড টেমপ্লেট যা অ্যাসেম্বলার দ্বারা প্রসেসিংয়ের সময় স্বয়ংক্রিয়ভাবে প্রসারিত হয়। Macros প্রোগ্রামারদের জন্য কোড লেখার প্রক্রিয়াকে সহজ ও দ্রুত করতে সাহায্য করে।
Macros কী:
- সংজ্ঞা: Macro হলো Assembly Language-এ কোডের পুনরাবৃত্ত অংশকে সংজ্ঞায়িত করার একটি উপায়। প্রোগ্রামাররা যখনই Macro কল করেন, অ্যাসেম্বলার সেই Macro-র কোডটি নির্দিষ্ট স্থানে বসিয়ে দেয়।
গঠন:
MACRO_NAME MACRO param1, param2 ; Macro-এর কোড MOV AX, param1 ADD AX, param2 ENDMকল করার উদাহরণ:
MACRO_NAME 5, 10 ; Macro-র কোড এখানে প্রসারিত হবে এবং 5 ও 10 ব্যবহার করবে
Macros এর প্রয়োজনীয়তা এবং সুবিধা:
- কোড পুনরায় ব্যবহার:
- প্রয়োজন: যখন প্রোগ্রামে একই কোডের পুনরাবৃত্তি প্রয়োজন হয়, তখন Macro ব্যবহার করে কোড পুনরায় লেখার প্রয়োজন হয় না।
- উদাহরণ: গণনার একটি বিশেষ অংশ যা বিভিন্ন স্থানে ব্যবহৃত হয়, Macro হিসেবে সংজ্ঞায়িত করলে একাধিকবার ব্যবহার করা সহজ।
- কোডের সরলীকরণ এবং কার্যক্ষমতা বৃদ্ধি:
- প্রয়োজন: কোডের পাঠযোগ্যতা এবং ব্যবস্থাপনা সহজ করার জন্য Macro ব্যবহার করা হয়।
- সুবিধা: প্রোগ্রামাররা বারবার ব্যবহৃত অংশগুলো Macro ব্যবহার করে ছোট ও পরিষ্কার কোড লিখতে পারেন।
- কোড রক্ষণাবেক্ষণ সহজ করা:
- প্রয়োজন: যখন একটি অংশের পরিবর্তন প্রয়োজন হয়, তখন একবার Macro-তে পরিবর্তন করলেই সমস্ত স্থানে প্রভাবিত হয়।
- সুবিধা: এক জায়গায় পরিবর্তন করলে একই Macro ব্যবহৃত সব জায়গায় সেই পরিবর্তন স্বয়ংক্রিয়ভাবে ঘটে।
- প্রসেসিং সময় কমানো:
- প্রয়োজন: Macro কল করা হলে অ্যাসেম্বলার সেই কোডকে প্রসারিত করে। ফলে রানটাইমে কোনো ফাংশন কলের ওভারহেড থাকে না।
- সুবিধা: কম সময়ে কার্য সম্পন্ন হয় এবং পারফরম্যান্স বৃদ্ধি পায়।
Macros এবং Procedures এর পার্থক্য:
| বৈশিষ্ট্য | Macros | Procedures |
|---|---|---|
| কোড এক্সপানশন | অ্যাসেম্বলার কোড প্রসারিত করে। | কোড সংরক্ষণ করে এক স্থান থেকে কল করা হয়। |
| পারফরম্যান্স | দ্রুত কার্য সম্পাদন কারণ কোনো ফাংশন কল নেই। | ফাংশন কলের জন্য কিছুটা ওভারহেড থাকে। |
| রিটার্ন মান | সাধারণত রিটার্ন মান নেই। | রিটার্ন মান থাকতে পারে। |
| কোড পুনরায় ব্যবহার | সহজে কোড পুনরায় ব্যবহারযোগ্য। | পুনরায় ব্যবহারযোগ্য কিন্তু কলের সময় ওভারহেড। |
Macros এর উদাহরণ:
Macro সংজ্ঞা:
SUM MACRO num1, num2
MOV AX, num1
ADD AX, num2
ENDMMacro কল করা:
SUM 5, 10 ; এখানে SUM Macro কল করা হলে কোডে MOV AX, 5 এবং ADD AX, 10 প্রসারিত হবে।সারসংক্ষেপ
Macros Assembly Language প্রোগ্রামিংয়ে কোড পুনরাবৃত্তি কমাতে, কোড সহজ করতে, এবং কার্যক্ষমতা বাড়াতে ব্যবহৃত হয়। এটি প্রোগ্রামের পাঠযোগ্যতা ও রক্ষণাবেক্ষণ সহজ করে। Macros ফাংশনের মতো কাজ করে, তবে এটি অ্যাসেম্বলার দ্বারা প্রসারিত হয় এবং রানটাইমে ফাংশন কলের ওভারহেড থাকে না। ফলে প্রোগ্রামিংয়ে সময় এবং প্রয়াস উভয়ই বাঁচায়।
Read more