JMP Instruction হলো Assembly Language-এর একটি গুরুত্বপূর্ণ নির্দেশনা, যা প্রোগ্রাম কাউন্টার (Instruction Pointer) সরাসরি নির্দিষ্ট ঠিকানায় স্থানান্তরিত করে। এটি প্রোগ্রাম প্রবাহে পরিবর্তন আনার জন্য ব্যবহৃত হয় এবং Unconditional Branching নির্দেশনা হিসেবে পরিচিত, কারণ এটি শর্তহীনভাবে কাজ করে।
JMP Instruction এর গঠন:
JMP Instruction-এর সাধারণ গঠন নিম্নরূপ:
JMP label
JMP Instruction এর ব্যবহার:
JMP Instruction-এর মাধ্যমে প্রোগ্রাম প্রবাহ একটি নির্দিষ্ট অংশে স্থানান্তরিত হয়, যা লুপ তৈরি, ফাংশন কল বা অন্যান্য নির্দিষ্ট অপারেশন সম্পাদনে সহায়ক।
উদাহরণ:
start:
MOV AX, 5 ; AX রেজিস্টারে ৫ লোড করা
ADD AX, 2 ; AX-এ ২ যোগ করা
JMP end_label ; প্রোগ্রাম প্রবাহ 'end_label' এ চলে যাবে
middle:
SUB AX, 1 ; এই অংশটি JMP এর কারণে কার্যকর হবে না
end_label:
MOV BX, AX ; BX রেজিস্টারে AX এর মান স্থানান্তর
ব্যাখ্যা:
JMP end_label
নির্দেশনাটি কার্যকর হলে, প্রোগ্রাম সরাসরি end_label
এ চলে যায় এবং middle
অংশটি কার্যকর হয় না।সুবিধা:
সীমাবদ্ধতা:
JMP Instruction ব্যবহার করে একটি লুপ তৈরি করা সম্ভব:
loop_start:
MOV CX, 5 ; CX রেজিস্টারে ৫ লোড করা
repeat:
DEC CX ; CX এক দ্বারা কমানো
JNZ repeat ; যদি CX জিরো না হয়, তবে 'repeat' এ লাফ দেয়
loop_end:
ব্যাখ্যা:
JNZ repeat
নির্দেশনাটি শর্তাধীন লাফ নির্দেশনা হলেও, JMP
নির্দেশনা ব্যবহার করে প্রোগ্রামের নির্দিষ্ট অংশে নিয়মিতভাবে লাফানো সম্ভব।সারসংক্ষেপ
JMP Instruction Assembly Language-এ প্রোগ্রামের প্রবাহকে শর্তহীনভাবে পরিবর্তন করতে ব্যবহৃত হয় এবং এটি Unconditional Branching নির্দেশনা হিসেবে কাজ করে। এটি প্রোগ্রামের বিভিন্ন লজিক্যাল কাজের জন্য উপযোগী, যেমন লুপ তৈরি এবং ফাংশন কল। তবে অতিরিক্ত ব্যবহারে প্রোগ্রামের জটিলতা ও ডিবাগিং সমস্যা তৈরি হতে পারে।
common.read_more