সহকারী শিক্ষক
১৪ আগস্ট, ২০২৬ ১০:৪২ অপরাহ্ণ
সহকারী শিক্ষক
ধরনঃ সাধারণ শিক্ষা
শ্রেণিঃ দ্বাদশ
বিষয়ঃ তথ্য ও যোগাযোগ প্রযুক্তি
অধ্যায়ঃ অধ্যায় ৫
কম্পিউটার প্রসেসর (CPU) যে ভাষা সরাসরি কোনো অনুবাদক প্রোগ্রাম (যেমন: কম্পাইলার বা ইন্টারপ্রেটার) ছাড়াই বুঝতে ও দ্রুত কার্যকর করতে পারে, তাকে মেশিন ভাষা বা যান্ত্রিক ভাষা বলা হয়।
এটি প্রোগামিং ভাষার ইতিহাসের প্রথম প্রজন্ম অর্থাৎ ১ম প্রজন্মের ভাষা (1st Generation Language / 1GL)। মেশিন ভাষা সম্পূর্ণভাবে বাইনারি ডিজিট ০ (0) এবং ১ (1) দ্বারা গঠিত। ইলেকট্রনিক সিগন্যালের উপস্থিতি (High Voltage) ও অনুপস্থিতি (Low Voltage) বোঝাতে যথাক্রমে ১ এবং ০ ব্যবহার করা হয়।
মেশিন ভাষার প্রতিটি নির্দেশ (Instruction) সাধারণত দুটি অংশে বিভক্ত থাকে:
অপকোড (Opcode / Operation Code): নির্দেশটি কী ধরনের কাজ করবে (যেমন: যোগ, বিয়োগ, ডেটা মেমরিতে রাখা ইত্যাদি) তা প্রসেসরকে বলে দেয়।
অপার্যান্ড (Operand): নির্দেশিত কাজটি কার ওপর বা মেমরির কোন স্থানে (Memory Address) সম্পাদিত হবে, তা নির্দিষ্ট করে।
উদাহরণ:
একটি সাধারণ মেশিন কোড হতে পারে:
10110000 01100100এখানে প্রথম অংশ নির্দেশ করে কোন কাজ করতে হবে (Opcode) এবং দ্বিতীয় অংশ নির্দেশ করে কোন উপাত্তের (Data) ওপর কাজ করতে হবে (Operand)।
বাইনারি রূপ: সম্পূর্ণ কোড কেবল ০ এবং ১ এর কম্বিনেশনে লেখা হয়।
সরাসরি সম্পাদন: কম্পিউটার হার্ডওয়্যার এই নির্দেশগুলো রূপান্তর ছাড়াই সাথে সাথে সম্পাদন করতে পারে।
যন্ত্র-নির্ভরতা (Machine Dependent): এক ধরনের মাইক্রোপ্রসেসরের জন্য লেখা মেশিন ভাষা অন্য কোনো ধরনের প্রসেসরে কাজ করে না।
সর্বোচ্চ গতি: কোনো রূপান্তর বা অনুবাদের প্রয়োজন না থাকায় এই ভাষায় লেখা প্রোগ্রাম সবচেয়ে দ্রুত কাজ করে।
দক্ষ মেমরি ব্যবহার: এতে কম্পিউটারের মেমরি সবচেয়ে কার্যকরভাবে ব্যবহার করা সম্ভব হয়।
হার্ডওয়্যার নিয়ন্ত্রণ: কম্পিউটারের সার্কিট এবং অভ্যন্তরীণ প্রসেসরের ওপর সরাসরি পূর্ণ নিয়ন্ত্রণ পাওয়া যায়।
অত্যন্ত কঠিন: মানুষের জন্য শুধু ০ এবং ১ দিয়ে দীর্ঘ ও জটিল প্রোগ্রাম মনে রাখা এবং লেখা অত্যন্ত কঠিন।
ভুল হওয়ার ঝুঁকি বেশি: সামান্য একটা ০ বা ১ ওলটপালট হলেই পুরো প্রোগ্রাম নষ্ট হয়ে যায় এবং ভুল চিহ্নিত করা (Debugging) অনেক কষ্টসাধ্য।
পোর্টেবিলিটির অভাব: এক কম্পিউটারের তৈরি মেশিন কোড অন্য স্থাপত্যের কম্পিউটারে চালানো যায় না।