Data Movement Instructions:
- সংজ্ঞা: এই নির্দেশনাগুলি ডেটাকে এক স্থান থেকে অন্য স্থানে স্থানান্তর করার জন্য ব্যবহৃত হয়, যেমন রেজিস্টার থেকে মেমোরি বা রেজিস্টার থেকে রেজিস্টার।
- উদাহরণ:
MOV: একটি উৎস থেকে গন্তব্যে ডেটা স্থানান্তর।
MOV AX, BX ; BX এর ডেটা AX-এ স্থানান্তর করা।- PUSH: স্ট্যাকের উপরে ডেটা সংরক্ষণ।
- POP: স্ট্যাক থেকে ডেটা বের করা।
Arithmetic Instructions:
- সংজ্ঞা: এই নির্দেশনাগুলি গণিতের মৌলিক অপারেশন, যেমন যোগ, বিয়োগ, গুণ, এবং ভাগ সম্পন্ন করার জন্য ব্যবহৃত হয়।
- উদাহরণ:
ADD: দুই অপারেন্ডের যোগফল।
ADD AX, 10 ; AX-এ ১০ যোগ করা।- SUB: বিয়োগ অপারেশন।
- MUL: গুণের জন্য ব্যবহার।
- DIV: ভাগফল এবং ভাগশেষ নির্ণয়ের জন্য।
Logical Instructions:
- সংজ্ঞা: এই নির্দেশনাগুলি লজিক্যাল অপারেশন যেমন AND, OR, NOT, XOR সম্পন্ন করার জন্য ব্যবহৃত হয়। এগুলি সাধারণত শর্ত যাচাই, বিট ম্যানিপুলেশন এবং ডেটা বিশ্লেষণে ব্যবহৃত হয়।
- উদাহরণ:
AND: বিটওয়াইস AND অপারেশন।
AND AX, BX ; AX এবং BX এর বিটওয়াইস AND।- OR: বিটওয়াইস OR অপারেশন।
- XOR: বিটওয়াইস XOR অপারেশন।
- NOT: বিট উল্টানোর জন্য।
Control Instructions:
- সংজ্ঞা: এই নির্দেশনাগুলি প্রোগ্রামের প্রবাহ নিয়ন্ত্রণ করতে ব্যবহৃত হয়, যেমন লুপ, শর্তাধীন শাখা, এবং ফাংশন কল।
- উদাহরণ:
JMP: নির্দিষ্ট ঠিকানায় সরাসরি জাম্প করা।
JMP START ; START লেবেলে সরাসরি লাফ দেওয়া।- JZ (Jump if Zero): যদি ফলাফল শূন্য হয় তবে নির্দিষ্ট ঠিকানায় জাম্প করা।
- CALL: সাবরুটিন কল করা।
- RET: সাবরুটিন থেকে ফিরে আসা।
| Instruction Type | Function | Examples |
|---|---|---|
| Data Movement | ডেটা স্থানান্তর | MOV, PUSH, POP |
| Arithmetic | গণিতের মৌলিক অপারেশন | ADD, SUB, MUL, DIV |
| Logical | বিটওয়াইস এবং লজিক্যাল অপারেশন | AND, OR, XOR, NOT |
| Control | প্রোগ্রামের প্রবাহ নিয়ন্ত্রণ | JMP, JZ, CALL, RET |
সারসংক্ষেপ
Instruction গুলি চারটি প্রধান ধরণের মধ্যে ভাগ করা যায়: Data Movement, Arithmetic, Logical, এবং Control। Data Movement ডেটা স্থানান্তর করে, Arithmetic গণিত অপারেশন সম্পন্ন করে, Logical বিটওয়াইস অপারেশন পরিচালনা করে, এবং Control প্রোগ্রামের প্রবাহ নিয়ন্ত্রণ করে। এগুলি মিলিতভাবে প্রোগ্রামের কার্যক্রম পরিচালনা এবং CPU-র কাজ সম্পন্ন করতে সহায়তা করে।
Read more