প্রোগ্রাম ভাষা কি? প্রোগ্রাম ভাষা কত প্টকার ও কি কি?
প্রোগ্রাম ভাষা কাকে বলে? প্রোগ্রাম ভাষার শ্রেনীবিভাগ আলোচনা কর।
প্রোগ্রাম:
প্রোগ্রাম হলো কতকগুলি নির্দেশের সমসষ্টি। অর্থাৎ কম্পিউটারের সাহায্যে কোন সমস্যার সমাধানের জন্য ধারাবাহিকভাবে বা পর্যায়ক্রমিকভাবে সাজানো কতকগুলি নির্দেশের সমষ্টিকে প্রোগ্রাম বলে। প্রোগ্রামের অপর নাম হলো সফটওয়ার।
প্রোগ্রামের ভাষা
কম্পিউটারের মাধ্যমে কোন প্রোগ্রাম রচনার জন্য ব্যবহৃত শব্দ, বর্ণ, অঙ্ক, চিহ্ন প্রভৃতির সমন্বয়ে গঠিত রীতি নীতিকে প্রোগ্রাম ভাষা বা Programming
Language বলে। সুতরাং নির্দিষ্ট নিয়ম অনুযায়ী শব্দ, বর্ণ, ও সংকেতগুলি সাজিয়ে তৈরি কম্পিউটারের বোধগম্য নির্দেশকে প্রোগ্রামিং ভাষা বলে। বিভিন্ন প্রোগ্রাম রচনার জন্য বিভিন্নধরনের প্রোগ্রাম ভাষা বিদ্যমান।
ক) নিন্মস্তরের ভাষা (Low Level Language)
কম্পিউটার সরাসরি যে ভাষা বুঝতে পারে তাই নিন্ম স্তরের ভাষা।
এই ভাষা দুই প্রকার যথা-
১) মেশিন ভাষা
২) অ্যাসেম্বলি ভাষা
মেশিন ভাষা (১ম প্রজন্মের ভাষা)
বাইনারী অংক 0 ও 1 ব্যবহার করে লিখিত প্রোগ্রামেকে মেশিন ভাষা বা Machine Language বলে। যেহেতু কম্পিউটার বা যে কোন ডিজিটাল ডিভাইস 0 (off)
ও 1 (on) ছাড়া অন্য কিছু বোঝে না।
তাই 0 ও 1হলো কম্পিউটারের নিজস্ব ভাষা। মেশিন ভাষায় লিখিত প্রোগ্রাম অথবা 0 ও 1 ব্যবহার করে লিখিত প্রোগ্রামেকে বলা হয় অবজেক্ট প্রোগ্রাম।মেশিন ভাষায় লিখিত প্রোগ্রাম কম্পিউটার সরাসরি বুঝতে পারে বলে কোন অনুবাদক প্রোগ্রামের প্রয়োজন হয় না।
মেশিনের ভাষার নির্দেশ সমূহকে চারভাগে ভাগ করা যায়। যথা-
১) গাণিতিক অর্থাৎ যোগ, বিয়োগ, গুন, ভাগ।
২) নিয়ন্ত্রন অর্থাৎ লোড, স্টোর ও জাম্প
৩) ইনপুট, আউটপুট অর্থাৎ পড় ও লেখ।
৪) প্রত্যক্ষ ব্যবহার অর্থাৎ শুরু কর, থাম, শেষ কর।
মেশিনের ভাষার বৈশিষ্ট্য বা সুবিধা
মেশিন ভাষায় লিখিত প্রোগ্রাম কম্পিউটার সরাসরি বুঝতে পারে তাই কোন অনুবাদক প্রোগ্রামের প্রয়োজন হয় না। এবং অন্যান্য ভাষার চেয়ে এই ভাষায় লিখিত প্রোগ্রাম
দ্রুত কার্যকর হয়।
এই ভাষায় সবচেয়ে কম পরিমান লজিক ব্যবহৃত হয় ও কম মেমোরি প্রয়োজন হয়।
এই ভাষায় লিখিত প্রোগ্রাম খুব ছোট হয় এবং নির্বাহ হতে কম সময় লাগে।
মেশিনের ভাষার অসুবিধা
এই ভাষা মেশিন নির্ভর তাই এক ধরনের মেশিনের জন্য লিখিত প্রোগ্রাম অন্য মেশিনে ব্যবহার করা যায় না।
মেশিনের ভাষায় প্রোগ্রাম লেখা অত্যন্ত কঠিন, জটিল, পরিশ্রমবহুল ও সময় সাপেক্ষ। তাই এভাষায় প্রোগ্রাম লিখতে অত্যন্ত দক্ষ প্রোগ্রামারের প্রয়োজন। এবং এই ভাষায় লেখা
প্রোগ্রামে ভুল হওয়ার সম্ভাবনা বেশি থাকে। ভুল সংশোধন বা পরিবর্তন অত্যন্ত কষ্টসাধ্য।
২)অ্যাসেম্বলি ভাষা / সাংকেতিক ভাষা / নোমেনিক ভাষা (২য় প্রজন্মের ভাষা)
যে ভাষায় বিভিন্ন ধরনেরসংকেত বা নেমোনিক কোড ব্যবহার করে প্রোগ্রাম রচনা করা হয় তাকে অ্যাসেম্বলি ভাষা বলে। অ্যাসেম্বলি ভাষাকে সাংকেতিক ভাষাও বলা হয় । এই সংকেত গুলিকে মনে রাখতে হয় বলে এই ভাষাকে নেমোনিক ভাষাও বলে। এবং সাংকেতিক কোডগুলিকে নেমোনিক কোড (Nemonic Code) বলে।
যেমন বিভিন্ন নেমেনিক কোড যোগের জন্য ADD, বিয়োগের জন্য SUB, গুনের জন্য MUL, ভাগের জন্য DIV, ইনপুটের জন্য INP, আউটপুটের জন্য OUT, লোড এর জন্য LDA, স্টোর এর জন্য STA, স্টপ এর জন্য STP, জাম্প এর জন্য JMP, ক্লিয়ার এর জন্য CLR ইত্যাদি নেমেনিক কোড ব্যবহার হয়।
অ্যাসেম্বলি ভাষায় সম্পূর্ণ নির্দেশ চারটি অংশে বিভক্ত থাকে যথা-
১) লেবেল
লেবেলে নির্দেশের সাংকেতি এ্যাড্রেস থাকে। যেমন JMP (জাম্প)এর সময় পরবর্তী নির্দেশের এ্যাড্রেস লেবেলে দেওয়া হয়।
২) অপকোড
বিভিন্ন কোড বা নেমেনিক কোডকে অপকোড বলে। যেমন যোগের জন্য ADD, ইনপুটের জন্য INP ইত্যাদি হলো অপকোড।
৩) অপারেন্ড
অপকোড যার উপর কার্যকর হয় তাই অপরেন্ড। যেমন INP:
A এখানে A হল আপরেন্ড।
৪) মন্তব্য
মন্তব্যতে বিভিন্ন নির্দেশের ব্যাখ্যা থাকে যাতে যোকোন প্রোগ্রামার ঐ নির্দেশ সম্পর্কে জানতে পারে। মন্তব্য মেশিন ভাষায় অনুদিত হয় না।
অ্যাসেম্বলি ভাষার বৈশিষ্ট্য বা সুবিধা
অ্যাসেম্বলি ভাষায় প্রেগ্রাম রচনা মেশিন ভাষার তুলনায় সহজ তাই অ্যাসেম্বলি ভাষায় সহজ ও সংক্ষিপ্ত প্রোগ্রাম রচনা করা সম্ভব।
এই ভাষায় রচিত প্রোগ্রমে ভুলের পরিমান কম হয় এবং সহজে তা সংশোধন করা যায়।
অ্যাসেম্বলি ভাষার অসুবিধা
এই ভাষাও মেশিন নির্ভর হওয়ায় মেশিনের আভ্যন্তরীন গঠন সম্পর্কে ভালো জানতে হয় ও এক ধরনের মেশিনের জন্য লিখিত প্রোগ্রাম অন্য মেশিনে ব্যবহার করা যায় না।
অ্যাসেম্বলি ভাষা মেশিন সরাসরি বুঝতে পারে না এজন্য অ্যাসেম্বলার নামক অনুবাদক প্রোগ্রামের প্রয়োজন হয়।
মধ্যমস্তরের ভাষা
যে সকল ভাষা একই সাথে মেশিন ভাষা এবং উচ্চস্তরের ভাষার সমন্বিত রুপ হলো মধ্যমস্তরের ভাষা বা মিড লেভেল ভাষা বলে।
এ ভাষার সাহায্যে নিন্ম স্তরের ভাষার মত বিট, বাইট ও মেমোরি এ্যাড্রেস নিয়ে কাজ করে। আবার উচ্চ স্তরের ভাষার মত বিট, বাইট ও মেমোরি এ্যাড্রেসের পরিবর্তে ডেটা টাইপ, ভেরিয়েবল নিয়ে কাজ করে। C,
FORTRAN, PASCAL ইত্যাদি হল মধ্যমস্তরের ভাষা।
উচ্চ স্তরের ভাষা (৩য় প্রজন্মের ভাষা)
যে ভাষা বিট, বাইট বা নেমোনিক কোডের পরিবর্তে সাধারণ ইংরেজি ভাষার অনুরুপ ডেটা টাইপ, ভেরিয়েবল ও বিভিন্ন ফাংশন, স্টেটমেন্ট ব্যবহার করে
প্রোগ্রাম রচনা করা হয় তাকে উচ্চ স্তরের ভাষা বলে। ইংরেজী ভাষার সাথে মিল রেখে এভাষা তৈরী হয়েছে। তবে এই ভাষায় লিখিত প্রোগ্রাম কম্পিউটার সরাসরি বুঝতে পারে না তাই কম্পিউটারেেক বোঝানোর জন্য অনুবাদক প্রোগ্রামের প্রয়োজন হয়। উচ্চস্তরের ভাষায় লিখিত প্রোগ্রামকে সোর্স প্রোগ্রাম বলা হয়। উদাহরণ
BASIC, PASCAL, C++, Cobol ইত্যাদি।
কাজের উপর ভিত্তি করে উচ্চ স্তরের ভাষাকে দুই ভাগে ভাগ করা যায়। যথা-
১) সাধারণ কাজের ভাষা
যে ভাষা সকল প্রকার কাজের উপযোগী তাই সাধারণ কাজের ভাষা। যেমন- C, BASIC, PASCAL ইত্যাদি।
২) বিশেষ কাজের ভাষা
যে ভাষা শুধুমাত্র বিশেষ বিশেষ কাজের উপযোগী তাই বিশেষ কাজের ভাষা। যেমন- FORTRAN , Algol ইত্যাদি।
আবার প্রয়োগের বৈশিষ্ট্যের ভিত্তিতে উচ্চস্তরের ভাষা দুই প্রকার। যথা-
১) প্রক্রিয়া ভিত্তিক ভাষা
প্রক্রিয়া ভিত্তিক ভাষাসমূহ হিসাবের প্রক্রিয়া নির্দেশ করে। যেমন, FORTRAN, Cobol,
BASIC ইত্যাদি।
২) সমস্যা ভিত্তিক ভাষা
সমস্যা ভিত্তিক ভাষা এমন এক ধরণের ভাষা যা প্রক্রিয়া ভিত্তিক ভাষার বিশেষ বিশেষ ক্ষেত্রে দক্ষতার সহিত ডেটা
প্রসেসিং করার জন্য ব্যবহৃত হয়। যেমন রিপোর্ট তৈরী ও ফাইল প্রসেসিং এর ভাষা RPG, কুয়েরির জন্য SQL ।
উচ্চ স্তরের ভাষার বৈশিষ্ট্য বা সুবিধা
এই ভাষাটি স্বাভাবিক ইংরেজী ভাষার মত ফলে এই ভাষায় প্রোগ্রাম রচনা সহজ, বোঝা যায় এবং তাড়াতাড়ি প্রেগ্রাম লেখা যায়।
এই ভাষায় কম্পিউটারের আভ্যন্তরীন গঠন সম্পর্কে জানার প্রয়োজন হয় না ফলে একই প্রোগ্রাম সকল প্রকার কম্পিউটারে ব্যবহার করা সম্ভব।
এই ভাষায় লিখিত প্রোগ্রাম সহজে পরিবর্তন ও সংশোধন করা যায়।
এই ভাষায় লিখিত প্রোগ্রাম অসংখ্য ফাংশন ও স্টেটমেন্ট ব্যবহারের সুবিধা থাকে।
উচ্চ স্তরের ভাষার অসুবিধা
এই ভাষায় লিখিত প্রোগ্রাম সরাসরি কম্পিউটার বুঝতে পারে না তাই অনুবাদক প্রোগ্রামের প্রয়োজন হয়।
এই ভাষায় লিখিত প্রোগ্রাম আকারে অনেক বড় ফলে রান করতে বেশী সময় লাগে এবং বেশী মেমোরি প্রয়োজন হয়।
ঘ) চতুর্থ প্রজন্মের ভাষা (Fourth
Generation Language, 4GL)
অতি উচ্চস্তরের ভাষাগুলি হলো চতুর্থ প্রজন্মের ভাষা। এ ভাষা ব্যবহার করে
খুব সহজে এ্যাপ্লিকেশন প্রোগ্রাম তৈরি করা যায় বলে একে RAD (Rapid Application Development) টুলসও বলা হয়। এভাষায় প্রোগ্রাম লেখার পর সম্পূর্ণ প্রেগ্রাম কম্পাইল করার প্রয়োজন হয় না। এতে কমান্ড লেখার সাথে সাথেই তা কম্পাইল হয়ে যায়। এ ভাষায় লিখিত কোনো প্রোগ্রাম বিভিন্ন কোম্পনীর তৈরি কম্পিউটারে কোনরুপ পরিবর্তন ছাড়াই ব্যবহার করা যায় । এইে ভাষার সাহায্যে ডেটাবেস ম্যানেজমেন্ট সিস্টেম এর প্রোগ্রাম রচনা করা যায়। তাই এভাষার জনপ্রিয়তা দিন দিন বাড়ছে। SQL, INTALECT,
NOMADS ORACLE, Visual Basic ইত্যাদি 4GL ভাষা।
ঙ) ৫ম প্রজন্মের ভাষা (5GL)
৫ম প্রজন্মের ভাষা হল ন্যাচরাল ল্যাঙগ্রয়েজ বা স্বাভাবিক ভাষা। এ প্রজন্মের ভাষাটি প্রোগ্রামার ব্যাতিত শুধূমাত্র কম্পিউটার দ্বারাই কোন নির্দিষ্ট সমস্যা সমাধান করার লক্ষ্যে ডিজাইন করা হয়েছে। প্রোগ্রামার কম্পিউটারের সাথে ভয়েজের ইন্টারএ্যাক্ট করে ভয়েজ রিকোগনেশন সিস্টেমের মাধ্যমে উক্ত ভয়েজ লিখিত কোডে রুপান্তর করে। ৫ম প্রজন্মের ভাষা প্রধনত: কৃত্রিম বুদ্ধিমত্তার ক্ষেত্রে ব্যবহৃত হয়।
উদাহরণ ঃ Prolog,
OPS5, Mercury ইত্যাদি।
উচ্চ স্তরের ভাষা ও মেশিনের ভাষার মধ্যে পার্থক্য
মেশিনের ভাষা |
উচ্চ স্তরের
ভাষা |
১। মেশিনের ভাষা হল
বাইনারি ০ ও ১
দিয়ে লিখিত প্রোগ্রাম। |
১। উচ্চ স্তরের ভাষা
হল সাধারণ ইংরেজি ভাষার
অনুরুপ ডেটা টাইপ, ভেরিয়েবল
ও বিভিন্ন ফাংশন,স্টেটমেন্ট
ব্যবহার করে লিখিত প্রোগ্রাম। |
২। এই ভাষা মেশিন
সরাসরি বুঝতে পারে।
তাই প্রোগ্রাম নির্বাহের জন্য
কোন অনুবাদক প্রোগ্রামের প্রয়োজন
হয় না। |
২। এই ভাষা মেশিন
সরাসরি বুঝতে পারে না। তাই প্রোগ্রাম অনুবাদের
জন্য কম্পাইলার বা ইন্টারপ্রিটার অনুবাদক প্রোগ্রামের প্রয়োজন
হয়। |
৩। মেশিনের ভাষায় লিখিত
প্রোগ্রামকে অবজেক্ট প্রোগ্রাম বলা
হয়। |
৩। উচ্চস্তরের ভাষায় লিখিত
প্রোগ্রামকে সোর্স প্রোগ্রাম বলা
হয়। |
৪। এই ভাষায় প্রোগ্রাম
লেখা কষ্টসাধ্য ও সময়
সাপেক্ষ এবং ভুল হওয়ার
সম্ভাবনা বেশি থাকে ও
প্রোগ্রাম ডিবাগিং কঠিন। |
৪। এই ভাষায় প্রোগ্রাম
লেখা সহজ। ভুল
হওয়ার সম্ভাবনা কম ও
প্রোগ্রাম ডিবাগিং সহজ।
|
৫।এই ভাষায় প্রোগ্রাম
লেখার জন্য অত্যন্ত দক্ষ
প্রেগ্রামার প্রয়োজন। |
৫। এই ভাষায় সাধার
ইংরেজি জানা যে কেউ
প্রোগ্রাম লিখতে পারে। |
মেশিনের ভাষা ও এ্যসেম্বলি ভাষার মধ্যে পার্থক্য
মেশিনের ভাষা ও এ্যসেম্বলি ভাষার মধ্যে পার্থক্য
মেশিনের ভাষা |
এ্যসেম্বলি ভাষা |
১। মেশিনের ভাষা হল
বাইনারি ০ ও ১
দিয়ে লিখিত প্রোগ্রাম। |
১। এ্যাসেম্বলি ভাষা হল
বিভিন্ন সাংকেতিক কোড ব্যবহার
করে লিখিত প্রোগ্রাম। |
২। মেশিনের ভাষায় লিখিত প্রোগ্রামকে অবজেক্ট প্রোগ্রাম বলা হয়। |
২। এ্যাসেম্বলি ভাষায় লিখিত
প্রোগ্রামকে সোর্স প্রোগ্রাম বলা
হয়। |
৩। মেশিনের ভাষায় প্রোগ্রাম
লেখা কষ্টকর ও সময়সাপেক্ষ। |
৩। । মেশিনের ভাষার
তুলনায় এ্যাসেম্বলি ভাষায় প্রোগ্রাম
লেখা সহজতর। |
৪। এই ভাষা মেশিন
সরাসরি বুঝতে পারে।
তাই প্রোগ্রাম নির্বাহের জন্য
কোন অনুবাদক প্রোগ্রামের প্রয়োজন
হয় না। |
৪। এই ভাষা মেশিন
সরাসরি বুঝতে পারে।
তাই এ ভাষায় লিখিত
প্রোগ্রাম অনুবাদের জন্য আ্যাসেম্বলার নামক অনুবাদক প্রোগ্রামের
প্রয়োজন হয়। |
HSC ICT এর প্রথম ও দ্বিতীয় অধ্যয়ের সব প্রশ্নের উত্তর এখানে
রোবটিকস বা রোবট কি?রোবটের গঠনগত উপাদানসমূহ কি কি?
ই-হেলথ কী? টেলিমেডিসিন একটি সেবা আলোচানা কর।
জীবনে তথ্য ও যোগাযোগ প্রযুক্তির
তথ্য ও যোগযোগ প্রযুক্তি ব্যবহারের নৈতিকতাগুলি কি কি?
তথ্য ও যোগাযোগ প্রযুক্তি কাকে বলে?
দুরশিক্ষণ বা ডিসট্যান্স লার্নিং
টেলি কনফারেন্স ও ভিডিও কনফারেন্স কী?
জীবনে তথ্য ও যোগাযোগ প্রযুক্তির
ডেটা কমিউনিকেশন সিস্টেম কাকে বলে?
সাধারণত রোমিং বলতে আমরা কি বুঝি?
Bluetooth কী? ব্লুটুথ এর বৈশিষ্ট্য লিখ
তথ্য ও যোগযোগ প্রযুক্তি ব্যবহারের নৈতিকতাগুলি কি কি?
ডেটা ট্রান্সমিশন মোড কি?
টেলিফোন লাইনের তার কি তাদের প্রকারভেদ ও ব্যবহার
তৃতীয় অধ্যয়ের সকল প্রশ্নের উত্তর
দুই ও তিন চলকের ক্ষেত্রে ডি-মরগানের সুত্র দুটি ও তার প্রমান।
ফ্লিপ-ফ্লপ কি? ফ্লিপ-ফ্লপ এর প্রকার ও ব্যবহার
ওয়েব পেজে একটি ইমেজ যুক্ত করার ট্যাগসমূহ
হাইপারলিংক কি? হাইপারলিংক করার জন্য ট্যাগটি উদাহরণ সহ বর্ণনা
HTML এ ব্যবহৃত মৌলিক ট্যাগগুলি বা HTML এর মৌলিক কাঠামো
ওয়েব পেজে একটি ইমেজ যুক্ত করার ট্যাগসমূহ
ফরমেটিং ট্যাগ বলতে কাকে বলে? ফরমেটিং ট্যাগগুলি কি কি
সার্বজনিন গেট কি? বিভিন্ন গেটে পারস্পরিক বাস্তবায়ন দেখাও।
একটি টেবিল তৈরীর ট্যাগগুলি উদাহরণসহ বর্ণনা
HTML কী? HTML এর সুবিধা অসুবিধা লিখ।
পাবলিশিং এর ধাপসমূহ বর্ণনা কর।
অ্যাডার (Adder) কি? অ্যাডার কত প্রকার ও কি কি?
রেজিস্টার (Register) কি? রেজিস্টারের ব্যবহার এবং প্রকারভেদ।
লজিক গেট,বুলিয়ান এ্যালজেবরার ব্যবহারিক।। মৌলিক গেইটগুলোর বিস্তারিত বিবরণ।
No comments
Don't share any link