পঞ্চম অধ্যায় পাঠ-১ বিভিন্ন প্রজন্মের প্রোগ্রামিং ভাষা এবং বিভিন্ন স্তরের প্রোগ্রামিং ভাষা।


পঞ্চম অধ্যায় পাঠ-১ বিভিন্ন প্রজন্মের প্রোগ্রামিং ভাষা এবং বিভিন্ন স্তরের প্রোগ্রামিং ভাষা।


এই পাঠ শেষে যা যা শিখতে পারবে-

  • ১। বিভিন্ন প্রজন্মের প্রোগ্রামিং ভাষা বর্ণনা করতে পারবে।
  • ২। বিভিন্ন স্তরের প্রোগ্রামিং ভাষা বর্ণনা করতে পারবে।
  • ৩। মেশিন ভাষার সুবিধা, অসুবিধা ও বৈশিষ্ট্য ব্যাখ্যা করতে পারবে।
  • ৪। অ্যাসেম্বলি ভাষার সুবিধা, অসুবিধা ও বৈশিষ্ট্য ব্যাখ্যা করতে পারবে।
  • ৫। উচ্চস্তরের প্রোগ্রামিং ভাষার সুবিধা, অসুবিধা ও বৈশিষ্ট্য ব্যাখ্যা করতে পারবে।

প্রোগ্রামঃ যন্ত্রের মাধ্যমে কোন সমস্যা সমাধানের জন্য প্রোগ্রামিং ভাষা ব্যবহার করে প্রোগ্রামারের দেওয়া প্রয়োজনীয় নির্দেশের সমষ্টিকে প্রোগ্রাম বলা হয়।
প্রোগ্রামিংঃ প্রোগ্রামিং ভাষা ব্যবহার করে কোন যন্ত্রকে নির্দেশনা দেওয়াকে বলা হয় প্রোগ্রামিং। অন্যভাবে বলা যায়, প্রোগ্রাম রচনার পদ্ধতি বা কৌশলকে প্রোগ্রামিং বলা হয়।
প্রোগ্রামারঃ যে ব্যাক্তি যন্ত্রের মাধ্যমে কোন সমস্যা সমাধানের লক্ষে প্রোগ্রামিং ভাষা ব্যবহার করে প্রয়োজনীয় নির্দেশনা দেয়  বা প্রোগ্রাম লিখে তাকে প্রোগ্রামার বলে।
প্রোগ্রামিং ভাষাঃ যে ভাষার সাহায্যে একটি যন্ত্রকে নির্দেশনা দিয়ে কোন সমস্যা সমাধান করা যায় তাকে প্রোগ্রামিং ভাষা বলে।অন্যভাবে বলা যায়, কম্পিউটারের মাধ্যমে কোন সমস্যা সমাধানের জন্য ব্যবহৃত শব্দ, বর্ণ, অংক, চিহ্ন প্রভৃতির সমন্বয়ে গঠিত রীতিনীতিকে প্রোগ্রামিং ভাষা বলা হয়। যেমন- BASIC, C, C++, COBOL, Java, FORTRAN, Ada, Pascal ইত্যাদি।
প্রোগ্রামিং ভাষার প্রকারভেদঃ 1945 থেকে শুরু করে এ পর্যন্ত যত প্রোগ্রামিং ভাষা আবিষ্কৃত হয়েছে তাদেরকে বৈশিষ্ট্য অনুযায়ী পাঁচটি প্রজন্মে ভাগ করা হয়েছে।
  • প্রথম প্রজন্ম – First Generation(1945-1949)
    • Machine Language ( যান্ত্রিক ভাষা)
  • দ্বিতীয় প্রজন্ম – Second Generation(1950-1959)
    • Assembly Language (অ্যাসেম্বলি ভাষা)
  • তৃতীয় প্রজন্ম –Third Generation(1960-1969)
    • High Level Language (উচ্চস্তরের ভাষা)
  • চতুর্থ প্রজন্ম – Fourth Generation(1970-1979)
    • Very High Level Language (অতি উচ্চস্তরের ভাষা)
  • পঞ্চম প্রজন্ম – Fifth Generation(1980-present)
    • Natural Language(স্বাভাবিক ভাষা)

প্রোগ্রাম রচনার বৈশিষ্ট্যের ভিত্তিতে প্রোগ্রামিং ভাষাসমূহকে আবার বিভিন্ন স্তরে বিভক্ত করা হয়ঃ 
  • ১। নিম্নস্তরের ভাষা (Low Level Language)
  •                         -Machine Language, Assembly Language
  • ২। মধ্যমস্তরের ভাষা (Mid Level Language)
  •                        -C, Forth, Dbase, WordStar
  • ৩। উচ্চস্তরের ভাষা (High Level Language)
  •                         -Fortran, Basic, Pascal, Cobol, C, C++, Visual Basic, Java, Oracle, Python
  • ৪। অতি উচ্চস্তরের ভাষা (Very High Level Language- 4GL)
  •                         -SQL, Oracle
  • ৫। স্বাভাবিক ভাষা Natural Language
  •                         -Human Language

মেশিন বা যান্ত্রিক ভাষাঃ যে ভাষায় শুধুমাত্র ০ এবং ১ ব্যবহার করে প্রোগ্রাম লেখা হয় তাকে মেশিন বা যান্ত্রিক ভাষা বলে।কম্পিউটারের নিজস্ব ভাষা হচ্ছে মেশিন ভাষা। এটি কম্পিউটারের মৌলিক ভাষা। এই ভাষায় শুধু মাত্র ০ এবং ১ ব্যবহার করা হয় বলে এই ভাষায় দেওয়া কোনো নির্দেশ কম্পিউটার সরাসরি বুঝতে পারে। এর সাহায্যে কম্পিউটারের সাথে সরাসরি  যোগাযোগ করা যায়। এটি প্রথম প্রজন্মের এবং নিম্নস্তরের ভাষা। মেশিন ভাষায় লেখা প্রোগ্রামকে অবজেক্ট বা বস্তু প্রোগ্রাম বলা হয়।
মেশিন ভাষার সুবিধা:
  • ১। মেশিন ভাষার সবচেয়ে বড় সুবিধা হচ্ছে কম্পিউটারের সাথে সরাসরি যোগাযোগ করা যায়।
  • ২। মেশিন ভাষায় লেখা প্রোগ্রাম নির্বাহের জন্য কোনো প্রকার অনুবাদক প্রোগ্রামের প্রয়োজন হয় না। ফলে দ্রুত কাজ করে।
  • ৩। মেশিন ভাষায় লেখা প্রোগ্রামে অতি অল্প মেমোরি প্রয়োজন হয়।
মেশিন ভাষার অসুবিধা:
  • ১।  শুধু ০ ও ১ ব্যবহার করা হয় বলে মেশিন ভাষা শেখা কষ্টকর এবং এই ভাষা ব্যবহার করে প্রোগ্রাম লেখাও কষ্টসাধ্য।
  • ২। এই ভাষায় লেখা কোনো প্রোগ্রাম সাধারণত বোঝা যায় না।
  • ৩। এই ভাষায় প্রোগ্রাম লিখতে প্রচুর সময় লাগে এবং ভুল হবার সম্ভাবনা খুব বেশি থাকে। ভুল হলে তা বের করা এবং ভুল-ত্রুটি দূর করা অর্থাৎ ডিবাগিং কষ্টসাধ্য।
  • ৪। এই ভাষার সবচেয়ে বড় অসুবিধা হচ্ছে এক ধরনের কম্পিউটারের জন্য লেখা প্রোগ্রাম অন্য ধরনের কম্পিউটারে ব্যবহার করা যায় না। অর্থাৎ যন্ত্র নির্ভর ভাষা।
  • ৫। এই ভাষায় প্রোগ্রাম রচনার ক্ষেত্রে কম্পিউটারের অভ্যন্তরীণ সংগঠন ভালোভাবে জানতে হয়।

অ্যাসেম্বলি ভাষাঃ যে ভাষায় বিভিন্ন সংকেত বা নেমোনিক ব্যবহার করে প্রোগ্রাম লেখা হয় তাকে অ্যাসেম্বলি ভাষা বলে।অ্যাসেম্বলি ভাষায় প্রোগ্রাম লেখার জন্য ০ ও ১ ব্যবহার না করে বিভিন্ন সংকেত ব্যবহার করা হয়। এই সংকেতকে বলে সাংকেতিক কোড (Symbolic Code) বা নেমোনিক (mnemonic) এবং এটি সর্বোচ্চ পাঁচটি লেটারের সমন্বয়ে হয়, যেমন- SUB(বিয়োগের জন্য), MUL(গুণের জন্য), ADD(যোগের জন্য), DIV(ভাগের জন্য) ইত্যাদি। এই বৈশিষ্ট্যের জন্য এই ভাষাকে সাংকেতিক ভাষাও বলা হয়। অ্যাসেম্বলি ভাষা দ্বিতীয় প্রজন্মের এবং নিম্নস্তরের ভাষা। দ্বিতীয় প্রজন্মের কম্পিউটারে এই ভাষা ব্যাপকভাবে প্রচলিত ছিল। এই ভাষায় লেখা প্রোগ্রাম অনুবাদের প্রয়োজন হয় এবং অনুবাদক প্রোগ্রাম হিসেবে অ্যাসেম্বলার ব্যবহৃত হয়।
অ্যাসেম্বলি ভাষায় প্রতিটি নির্দেশের চারটি অংশ থাকে। যথা- 
  • লেবেল
  • অপ-কোড
  • অপারেন্ড
  • কমেন্ট
ক. লেবেলঃ প্রোগ্রামের একটি নির্দিস্ট স্থানকে চিহ্নিত করতে লেবেল ব্যবহৃত হয়। লেবেল ব্যবহারের ফলে প্রোগ্রাম একটি নির্দিস্ট স্টেটমেন্ট থেকে অপর একটি নির্দিস্ট স্টেটমেন্টে জাম্প করতে পারে। লেবেল লেখার ক্ষেত্রে এক বা দুইটি আলফানিউমেরিক ক্যারেক্টার ব্যবহৃত হয় এবং ক্যারেক্টারের মাঝে কোন ফাঁকা থাকা যাবে না।লেবেল হিসেবে কোন নেমোনিক ব্যবহার করা যাবে না। লেবেলের শেষে কোলন(:) দিতে হয়। যেমন- BB: ।
খ. অপ-কোডঃ অপ-কোডকে অপারেশন কোডও বলা হয়। অপ-কোডে নির্দেশ নেমোনিক থাকে। এই নেমোনিকগুলো ভিন্ন ভিন্ন কম্পিউটারে ভিন্ন ভিন্ন হতে পারে। কিছু নির্দেশ নেমোনিক ও তাদের ব্যবহার দেখানো হল-
নেমোনিক ব্যবহার
LDAপ্রধান মেমোরির ডেটা অ্যাকিউমুলেটরে লোড করা।
STAঅ্যাকিউমুলেটরের ডেটাকে একটি নির্দিস্ট অবস্থানে সংরক্ষণ করা।
CLRঅ্যাকিউমুলেটর খালি করা।
ADDঅ্যাকিউমুলেটরের সাথে অপারেন্ডের মান যোগ করে যোগফল অ্যাকিউমুলেটরে রাখা।
SUBঅ্যাকিউমুলেটর থেকে অপারেন্ডের মান বিয়োগ করে বিয়োগফল অ্যাকিউমুলেটরে রাখা।
MULঅ্যাকিউমুলেটরের সাথে অপারেন্ডের মান গুন করে গুণফল অ্যাকিউমুলেটরে রাখা।
DIVঅ্যাকিউমুলেটরের মানকে অপারেন্ডের মান দ্বারা ভাগ করে ভাগফল অ্যাকিউমুলেটরে রাখা।
JMPশর্তহীনভাবে প্রোগ্রামের নির্দিস্ট লেভেলে জাম্প করতে।
INPডেটা বা নির্দেশ গ্রহণ করে মেমোরির নির্দিস্ট অবস্থানে রাখা।
OUTমেমোরির নির্দিস্ট অবস্থানের ডেটা আউটপুটে প্রদর্শন।
STPপ্রোগ্রামকে থামানো।
গ. অপারেন্ডঃ অপকোড যার উপর কাজ করে তাকে অপারেন্ড বলে। এটি সাধারণত মেমোরির অ্যাড্রেস বা সরাসরি ডেটা হতে পারে।
ঘ. কমেন্টঃ প্রোগ্রামে কোন নির্দেশের কী কাজ তা বর্ননা আকারে লেখা হয় যাকে কমেন্ট বা মন্তব্য বলে। এটি প্রোগ্রাম নির্দেশের কোন অংশ নয়। প্রোগ্রাম নির্দেশগুলোর কমেন্ট থাকলে পরবর্তীতে প্রোগ্রামের পরিবর্তন করা সহজ হয় বা অন্য কোন প্রোগ্রামারের পক্ষে প্রোগ্রাম নিয়ে কাজ করা সহজ হয়।
অ্যাসেম্বলি ভাষার সুবিধা:
  • ১। অ্যাসেম্বলি ভাষা সহজে বুঝা যায় এবং এই ভাষায় প্রোগ্রাম রচনা করা যান্ত্রিক ভাষার তুলনায় অনেক সহজ।
  • ২। প্রোগ্রাম রচনা করতে সময় এবং শ্রম কম লাগে।
  • ৩। প্রোগ্রামের ত্রুটি বের করে তা সমাধান করা এবং প্রোগ্রাম পরিবর্তন করা সহজ।
অ্যাসেম্বলি ভাষার অসুবিধা:
  • ১। এই ভাষার সবচেয়ে বড় অসুবিধা হচ্ছে এক ধরনের কম্পিউটারের জন্য লেখা প্রোগ্রাম অন্য ধরনের কম্পিউটারে ব্যবহার করা যায় না। অর্থাৎ যন্ত্র নির্ভর ভাষা।
  • ২। প্রোগ্রাম রচনার সময় প্রোগ্রামারকে মেশিন সম্পর্কে ধারণা থাকতে হয়।
  • ৩। অনুবাদক প্রোগ্রামের প্রয়োজন হয়।

উচ্চস্তরের ভাষাঃ  উচ্চস্তরের ভাষা হলো সেই সকল ভাষা যা মানুষের বোধগম্য এবং মানুষের ভাষার কাছাকাছি। যেমন- উচ্চস্তরের ভাষা ইংরেজি ভাষার সাথে মিল আছে এবং এই প্রোগ্রামিং ভাষা যন্ত্র নির্ভর নয়, এই জন্য এসব ভাষাকে উচ্চস্তরের ভাষা বলা হয়। এটি মানুষের জন্য বুঝা খুব সহজ কিন্তু কম্পিউটার সরাসরি  বুঝতে পারে না বলে অনুবাদক প্রোগ্রামের সাহায্যে একে মেশিন ভাষায় রুপান্তর করে নিতে হয়। এটি তৃতীয় প্রজন্মের ভাষা।
উচ্চস্তরের ভাষার প্রকারভেদ:
সাধারণ কাজের ভাষা (General Purpose Language): যেসব প্রোগ্রামিং ভাষা সব ধরনের কাজের উপযোগী তা সাধারণ কাজের ভাষা নামে পরিচিত। যেমন- BASIC, PASCAL, C ইত্যাদি।
বিশেষ কাজের ভাষা (Special Purpose Language) : যেসব প্রোগ্রামিং ভাষা বিশেষ বিশেষ কাজের উপযোগী তা বিশেষ কাজের ভাষা নামে পরিচিত। যেমন: COBOL, ALGOL, FORTRAN ইত্যাদি।
উচ্চস্তরের ভাষার সুবিধা: 
  • ১। উচ্চস্তরের ভাষা মানুষের ভাষা যেমন- ইংরেজি ভাষার কাছাকাছি। তাই শেখা সহজ ফলে এই ভাষা ব্যবহার করে প্রোগ্রাম লেখা সহজ ও লিখতে সময় কম লাগে।
  • ২। এতে ভুল হবার সম্ভবনা কম থাকে এবং প্রোগ্রামের ত্রুটি বের করে তা সংশোধন করা অর্থাৎ ডিবাগিং সহজ।
  • ৩। এই ভাষায় প্রোগ্রাম লেখার জন্য কম্পিউটারের ভেতরের সংগঠন সম্পর্কে ধারণা থাকার প্রয়োজন নেই।
  • ৪। এক মডেলের কম্পিউটারের জন্য লেখা প্রোগ্রাম অন্য মডেলের কম্পিউটারে চলে । অর্থাৎ যন্ত্র নির্ভর নয়।
উচ্চস্তরের ভাষার অসুবিধা:
  • ১। উচ্চস্তরের ভাষার অসুবিধা হচ্ছে এই ভাষার সাহায্যে কম্পিউটারের সাথে সরাসরি যোগাযোগ করা যায় না।
  • ২। এই ভাষায় লেখা প্রোগ্রামকে অনুবাদ করে কম্পিউটারকে বুঝিয়ে দিতে হয়। অর্থাৎ অনুবাদক প্রোগ্রামের প্রয়োজন হয়।
  • ৩। বেশি মেমোরি প্রয়োজন হয়।
উচ্চস্তরের ভাষার ব্যবহার:
  • ১। বড় এ্যাপ্লিকেশন তৈরির কাজে।
  • ২। জটিল গাণিতিক হিসাব-নিকাশে ব্যবহৃত সফটওয়্যার তৈরি করতে।
  • ৩। এ্যাপ্লিকেশন প্যাকেজ সফটওয়্যার তৈরিতে
  • ৪। বিভিন্ন ধরনের অটোমেটিক প্রসেস কন্ট্রোলের কাজে।

জনপ্রিয় কিছু উচ্চস্তরের প্রোগ্রামিং ভাষার পরিচিতিঃ
সি (C): ‘সি’ প্রোগ্রামিং ভাষা একটি স্ট্রাকচার্ড বা প্রোসিডিউর প্রোগ্রামিং ভাষা। মিড লেভেল ল্যাঙ্গুয়েজ হিসেবে ‘সি’ অত্যন্ত জনপ্রিয়। “ডেনিশ রিচি” ‘সি’ প্রোগ্রামিং ভাষার জনক। ‘সি’ নামটা এসেছে মার্টিন রিচার্ডস (Martins Richards) এর উদ্ভাবিত বিসিপিএল (BCPL-Basic Combined Programming Language) ভাষা থেকে। BCPL সংক্ষেপে B নামে পরিচিত ছিল। পরে B এর উন্নয়নের ফলে C এর বিকাশ ঘটে।
সি++(C++): ১৯৮০ সালে Bjarne Stroustrup বেল ল্যাবরেটরিতে C ভাষার বৈশিষ্ট্যের সাথে অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং এর বৈশিষ্ট্য যুক্ত করে নতুন এক প্রোগ্রামিং ভাষা তৈরি করেন যা C++ নামে পরিজায়। এই ভাষাকে অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং ভাষা বলা হয়। এই ভাষার সাহায্যে বিভিন্ন সিস্টেম সফটওয়্যার, অ্যাপ্লিকেশন সফটওয়্যার, ডিভাইস ড্রাইভার ইত্যাদি তৈরি করা যায়।
জাভাঃ সান মাইক্রোসিস্টেম কোম্পানি জাভা প্রোগ্রামিং ভাষাটি তৈরি করেন। James Gosling কে জাভা প্রোগ্রামিং ভাষার জনক বলা হয়। এটি একটি অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং ভাষা। বর্তমান যুগে জাভার জনপ্রিয়তার মূল কারণ হল এই ভাষা ব্যবহার করে লেখা প্রোগ্রাম যেকোন অপারেটিং সিস্টেমে চালানো যায়। এই প্রোগ্রামিং ভাষা ব্যবহার করে ওয়েব অ্যাপ্লিকেশন, ডেস্কটপ অ্যাপ্লিকেশন, মোবাইল অ্যাপ্লিকেশন ইত্যাদি তৈরি করা যায়।
পাইথনঃ ১৯৯১ সালে Guido Van Rossum পাইথন প্রোগ্রামিং ভাষা তৈরি করেন। এই ভাষা একই সাথে  অবজেক্ট ওরিয়েন্টেড ও স্ট্রাকচার্ড প্রোগ্রামিং ভাষার বৈশিষ্ট্য সাপোর্ট করে।
ভিজুয়্যাল বেসিকঃ ভিজুয়্যাল বেসিক একটি ইভেন্ট ড্রাইভেন প্রোগ্রামিং ডিজাইন ভিত্তিক ভাষা। এটি মাইক্রোসফট তৈরি করে। এই ভাষা ব্যবহার করে খুব সহজেই কাস্টমাইজড অ্যাপ্লিকেশন সফটওয়্যার তৈরি করা যায়।
অ্যালগলঃ  এর পূর্ণনাম Algorithmic Language। এটি ব্যবহৃত হতো মূলত বৈজ্ঞানিক গবেষণায় বিভিন্ন সমস্যার সমাধানে।
ফোরট্রানঃ Fortran এর অর্থ Formula Translator যা উচ্চস্তর প্রোগ্রামিং ভাষাগুলোর মধ্যে সবচেয়ে আদিমতম ভাষা। IBM এর গবেষক জন বাকাস IBM মেইনফ্রেম কম্পিউটার এর জন্য এটি তৈরি করেন। এটি গাণিতিক জটিল হিসাব-নিকাশের জন্য এবং প্রকৌশল বিজ্ঞানে গবেষণার কাজে বেশ জনপ্রিয়।  
ওরাকলঃ  ওরাকল একটি RDBMS(Relational Database Management System) সফটওয়্যার যা ওরাকল কর্পোরেশন তৈরি করে। এটি ডেটাবেজ সফটওয়্যারগুলোর মধ্যে সবচেয়ে জনপ্রিয়।
মধ্যমস্তরের ভাষাঃ যে প্রোগ্রামিং ভাষায় নিম্নস্তরের ভাষার সুবিধা যেমন- বিট পর্যায়ের প্রোগ্রামিং বা সিস্টেম সফটওয়্যার  এর মাধ্যমে হার্ডওয়্যার নিয়ন্ত্রণ এবং উচ্চস্তরের ভাষার সুবিধা যেমন- অ্যাপ্লিকেশন সফটওয়্যার তৈরি করা যায় তাকে মধ্যম স্তরের ভাষা বলা হয়। মধ্যম স্তরের ভাষার উদাহরণ হল – C, Forth, Dbase, WordStar ইত্যাদি।
চতুর্থ প্রজন্মের ভাষা(4th Generation Language-4GL): 4GL এর পূর্ণরূপ Fourth Generation Language। চতুর্থ প্রজন্মের ভাষাকে অতি উচ্চ স্তরের ভাষা বলা হয়। চতুর্থ প্রজন্মের ভাষা হলো ডেটাবেজ সংক্রান্ত ভাষা। অর্থাৎ এই প্রজন্মের ভাষার সাহায্যে ডেটাবেজ তৈরি, আপডেট, ডিলেট সহ ডেটাবেজ সম্পর্কিত সকল কাজ সম্পাদন করা যায়। এই প্রজন্মের ভাষাকে non-procedural বা Functional Language বলা হয়। কারণ এই প্রজন্মের ভাষার ব্যবহারের ক্ষেত্রে যে তথ্যাবলি দরকার কেবল তা বলে দিলেই হয়, কীভাবে কুয়েরি করা যাবে তা বলার দরকার হয় না। এই প্রজন্মের ভাষার উদাহরণ হল  SQL, Oracle ইত্যাদি।
পঞ্চম প্রজন্মের ভাষা(5th Generation Language-5GL): 5GL এর পূর্ণরূপ Fifth Generation Language। পঞ্চম প্রজন্মের ভাষাকে স্বাভাবিক ভাষা (Natural Language) ও বলা হয়। Artificial Intelligence বা কৃত্রিম বুদ্ধিমত্তা নির্ভর যন্ত্র তৈরিতে এই প্রজন্মের ভাষা ব্যবহৃত হয়। পঞ্চম প্রজন্মের ভাষায় লেখা প্রোগ্রামকে মেশিন ভাষায় রূপান্তরের জন্য ইন্টেলিজেন্ট কম্পাইলার ব্যবহৃত হয়। এই প্রজন্মের ভাষা ব্যবহার করে মানুষ যন্ত্রকে মৌখিক নির্দেশ দিতে পারে। পঞ্চম প্রজন্মের ভাষার উদাহরণ হচ্ছে PROLOG(PROgramming LOGic), LISP, Mercury  ইত্যাদি।

পাঠ মূল্যায়ন- 

জ্ঞানমূলক প্রশ্নসমূহঃ
  • ক। প্রোগ্রাম কী?
  • ক। প্রোগ্রামিং ভাষা কী?
  • ক। প্রোগ্রামিং কী?
  • ক। প্রোগ্রামার কাকে বলে?
  • ক। মেশিন বা যান্ত্রিক ভাষা কী?
  • ক। অ্যাসেম্বলি ভাষা কী?
  • ক। নেমোনিক কী?
  • ক। নিম্নস্তরের ভাষা কী?
  • ক। উচ্চস্তরের ভাষা কী?
  • ক। 4GL কী?

অনুধাবনমূলক প্রশ্নসমূহঃ
  • খ। ০, ১ দিয়ে লেখা ভাষাটি ব্যাখ্যা কর।
  • খ। ‘শব্দ ছাড়াই শুধুমাত্র সংখ্যার মাধ্যমে ভাষা প্রকাশ সম্ভব’- ব্যাখ্যা কর।
  • খ। “লো-লেভেল ল্যাংগুয়েজের দুর্বলতাই হাই-লেভেল ল্যাংগুয়েজের উৎপত্তির কারণ।”- ব্যাখ্যা কর।
  • খ। মেশিন ভাষায় লিখিত প্রোগ্রাম দ্রুত নির্বাহ হয় কেন?
  • খ। অ্যাসেম্বলি ভাষা মেশিন ভাষার চেয়ে উন্নততর কেন?
  • খ। উচ্চস্তরের ভাষা মেশিন থেকে উন্নততর”-ব্যাখ্যা কর।
  • খ। হাই-লেবেল প্রোগ্রামিং ভাষায় প্রোগ্রামিং করা সহজ- ব্যাখ্যা কর।
  • খ। সি প্রোগ্রামিং ভাষাকে মিড লেভেল প্রোগ্রামিং ভাষা বলা হয় কেন?
  • খ। সি একটি উচ্চ স্তরের প্রোগ্রামিং ভাষা-ব্যাখ্যা কর।

সৃজনশীল প্রশ্নসমূহঃ
উদ্দীপকটি পড়ে প্রশ্নের উত্তর দাওঃ
নাফিছা ম্যাডাম আইসিটি ক্লাসে প্রোগ্রামিং ভাষা নিয়ে আলোচনা করছিলেন। তিনি বললেন অনেক আগে শুধুমাত্র সংখ্যা ব্যবহার করে প্রোগ্রাম লেখা হতো। কিন্তু বর্তমানে তা ব্যবহৃত হয় না। তিনি বললেন, বর্তমানে ‘সি’ প্রোগ্রামিং ভাষাটি খুবই জনপ্রিয়। তিনি ‘সি’ ভাষার উপর বিশদ আলোচনা করলেন এবং ছাত্রছাত্রীদের ৬ এবং ১২ সংখ্যা দুটির ল.সা.গু নির্ণয়ের জন্য ‘সি’ ভাষায় একটি প্রোগ্রাম লিখতে বললেন।
  • গ। উদ্দীপকে উল্লিখিত প্রথম ভাষাটি সম্পর্কে বিস্তারিত লেখ।
উদ্দীপকটি পড়ে প্রশ্নের উত্তর দাওঃ
রহিম ও করিম প্রোগ্রামার। দুই জনের প্রোগ্রাম তৈরির পদ্ধতি দুই ধরনের। রহিম প্রোগ্রাম লেখার জন্য বিভিন্ন সংকেত ব্যবহার করে। অপরদিকে করিম প্রোগ্রাম লেখার জন্য বিভিন্ন ইংরেজি শব্দ ব্যবহার করে।
  • গ। উদ্দীপকে রহিম কোন ধরনের ভাষা ব্যবহার করেছে? ব্যাখ্যা কর।
  • ঘ। উদ্দীপকে উল্লিখিত প্রোগ্রামিং ভাষা দুটির মধ্যে কোনটি সুবিধাজনক? বিশ্লেষণ কর।
উদ্দীপকটি পড়ে প্রশ্নের উত্তর দাওঃ
নিপা ও অর্পা দুই বন্ধু। তারা বিভিন্ন প্রোগ্রামিং ভাষা শিখছে। নিপা এমন একটি প্রোগ্রামিং ভাষা ব্যবহার করে প্রোগ্রাম লিখল যা অন্য কোন মডেলের কম্পিউটারে ব্যবহার করা যায় না এবং এই ভাষায় লেখা প্রোগ্রাম অনুবাদ করতে হয় না। অপরদিকে অর্পার লেখা প্রোগ্রাম যেকোন কম্পিউটারে ব্যবহার করা যায় এবং এই ভাষায় প্রোগ্রাম লেখার জন্য কম্পিউটারের অভ্যন্তরীণ সংঘঠন জানতে হয় না।
  • গ। উদ্দীপকে নিপার ব্যবহৃত প্রোগ্রামিং ভাষাটি কোন প্রজন্মের? ব্যাখ্যা কর।
  • ঘ। উদ্দীপকে উল্লিখিত প্রোগ্রামিং ভাষা দুটির মধ্যে কোন স্তরের ভাষাটি সুবিধাজনক? বিশ্লেষণ কর।

Post a Comment

0 Comments
Post a Comment (0)
To Top