Follow Us
মাধ্যম নির্বাচন করুন / Select Medium:
Eng (English) Beng (বাংলা) Hindi (हिन्दी)
পশ্চিমবঙ্গ মধ্যশিক্ষা পর্ষদ (WBBSE) • শ্রেণি XI • Computer Science • অধ্যায় 1
আনুমানিক সময়: ৪৫ মিনিট
অগ্রগতি: অধ্যয়নে সক্রিয়

কম্পিউটার সিস্টেম ও সংগঠন

পশ্চিমবঙ্গ উচ্চমাধ্যমিক শিক্ষা সংসদের (WBCHSE) একাদশ শ্রেণির কম্পিউটার সায়েন্স পাঠ্যক্রমের প্রথম ও অত্যন্ত গুরুত্বপূর্ণ অধ্যায় হলো 'কম্পিউটার সিস্টেম ও সংগঠন'। এই অধ্যায়ে আধুনিক ডিজিটাল কম্পিউটারের অভ্যন্তরীণ স্থাপত্য, ইলেকট্রনিক উপাদান এবং ডেটা প্রক্রিয়াকরণের মৌলিক বৈজ্ঞানিক ভিত্তি বিশদভাবে তুলে ধরা হয়েছে। ভ্যাকুয়াম টিউব থেকে শুরু করে আধুনিক মাইক্রোপ্রসেসর ও কৃত্রিম বুদ্ধিমত্তা সমৃদ্ধ পঞ্চম প্রজন্মের বিবর্তন এবং জন ফন নিউম্যানের যুগান্তকারী 'সঞ্চিত প্রোগ্রাম ধারণা' দিয়ে অধ্যায়ের সূচনা ঘটে। শিক্ষার্থীরা সিপিইউ-এর অভ্যন্তরীণ গঠন—যেমন অ্যারিথমেটিক লজিক ইউনিট (ALU), কন্ট্রোল ইউনিট (CU), অভ্যন্তরীণ অতিদ্রুত রেজিস্টারসমূহ (PC, MAR, MDR, IR, ACC) এবং ত্রিস্তরীয় সিস্টেম বাস (ডেটা, অ্যাড্রেস ও কন্ট্রোল বাস) সম্পর্কে স্পষ্ট ধারণা লাভ করে। এছাড়াও রেফারেন্সের স্থানিক ও কালিক সান্নিধ্যের নীতির ওপর প্রতিষ্ঠিত মেমোরি স্তরবিন্যাস, ক্যাশ মেমোরি, ফ্লিপ-ফ্লপ ভিত্তিক স্ট্যাটিক র‍্যাম (SRAM), ক্যাপাসিটর রিফ্রেশ নির্ভর ডায়নামিক র‍্যাম (DRAM), এবং সেকেন্ডারি স্টোরেজ (SSD ও HDD)-এর কার্যপদ্ধতি আলোচনা করা হয়েছে। অধ্যায়টিতে বিভিন্ন সংখ্যা পদ্ধতি (বাইনারি, অক্টাল, ডেসিমেল, হেক্সাডেসিমেল)-এর পারস্পরিক রূপান্তর, ঋণাত্মক সংখ্যার ১-এর ও ২-এর পরিপূরক উপস্থাপনা, ক্যারেক্টার এনকোডিং (ASCII, ISCII, Unicode) এবং জর্জ বুলের বুলিয়ান বীজগণিত অত্যন্ত সহজবোধ্যভাবে বিন্যস্ত হয়েছে। পরিশেষে সার্বজনীন NAND ও NOR গেটের সাহায্যে যেকোনো ডিজিটাল সার্কিট তৈরি, ডি মর্গ্যানের উপপাদ্য এবং অপারেটিং সিস্টেমের কোর মডিউলসমূহ—যেমন প্রসেসর শিডিউলিং, ভার্চুয়াল মেমোরি পেজিং, ফাইল পরিচালনা ও স্পুলিং (SPOOLing)-এর পুঙ্খানুপুঙ্খ বিশ্লেষণ প্রদান করা হয়েছে।

অধ্যায়টির গুরুত্ব

আধুনিক ডিজিটাল প্রযুক্তি—স্মার্টফোন, ক্লাউড সার্ভার, সুপারকম্পিউটার কিংবা গেমিং গ্রাফিক্স কার্ড—সবকিছুই এই অধ্যায়ে বর্ণিত স্থাপত্য ও লজিক্যাল নিয়মের ওপর ভিত্তি করে নির্মিত। সিপিইউ কীভাবে রেজিস্টার ও ক্যাশ মেমোরির সাথে সমন্বয় করে নির্দেশ সম্পাদন করে, কেন ২-এর পরিপূরক পদ্ধতিতে আলাদা বিয়োগ যন্ত্র ছাড়াই যোগের সার্কিট দিয়ে বিয়োগ সম্ভব হয়, এবং কীভাবে বুলিয়ান বীজগণিতের মাধ্যমে ট্রানজিস্টরের সংখ্যা কমিয়ে খরচ ও বিদ্যুৎ সাশ্রয় করা যায়—তা জানা অত্যন্ত জরুরি। উচ্চমাধ্যমিক পরীক্ষায় এই অধ্যায় থেকে ১০ থেকে ১২ নম্বরের প্রশ্ন নিশ্চিতভাবে আসে এবং ভবিষ্যতে বি.টেক, বিসিএ, বিএসসি কম্পিউটার সায়েন্স ও সর্বভারতীয় প্রতিযোগিতামূলক পরীক্ষার (WBJEE, JEE) জন্য এটি এক অপরিহার্য ভিত্তি।

অধ্যায়ের বিষয়সূচি ও রূপরেখা

1 মডিউল ১: কম্পিউটারের বিবর্তন ও ফন ন...
2 মডিউল ২: মেমোরি স্তরবিন্যাস, ক্যাশ...
3 মডিউল ৩: ডেটা উপস্থাপনা ও সংখ্যা পদ...
4 মডিউল ৪: চিহ্নযুক্ত সংখ্যা, ২-এর পর...
5 মডিউল ৫: বুলিয়ান বীজগণিত, লজিক গেট...
6 মডিউল ৬: সফটওয়্যারের প্রকারভেদ, অন...

সম্পূর্ণ তত্ত্ব ও ধারণাগত আলোচনা

মডিউল ১: কম্পিউটারের বিবর্তন ও ফন নিউম্যান স্থাপত্য

১.১ কম্পিউটারের ঐতিহাসিক বিবর্তন ও প্রজন্মসমূহ

সুইচিং প্রযুক্তি, মেমোরি ও প্রোগ্রামিং ভাষার ওপর ভিত্তি করে আধুনিক কম্পিউটারের ইতিহাসকে পাঁচটি প্রজন্মে ভাগ করা হয়:

প্রজন্মমূল হার্ডওয়্যার প্রযুক্তিমেমোরি ও স্টোরেজব্যবহৃত ভাষাউল্লেখযোগ্য সিস্টেম
প্রথম প্রজন্ম (১৯৪০-১৯৫৬)ভ্যাকুয়াম টিউব (থার্মায়োনিক ভালভ)ম্যাগনেটিক ড্রাম, অ্যাকোস্টিক ডিলে লাইনমেশিন ল্যাঙ্গুয়েজ (খাঁটি বাইনারি ০/১)ENIAC, EDVAC, UNIVAC-I
দ্বিতীয় প্রজন্ম (১৯৫৬-১৯৬৩)ট্রানজিস্টর (বাইপোলার জাংশন)ম্যাগনেটিক কোর মেমোরি, ম্যাগনেটিক টেপঅ্যাসেম্বলি ভাষা, প্রারম্ভিক HLL (FORTRAN, COBOL)IBM 1401, CDC 1604
তৃতীয় প্রজন্ম (১৯৬৪-১৯৭১)সমন্বিত বর্তনী (Integrated Circuits - SSI/MSI)ম্যাগনেটিক কোর, প্রাথমিক সেমিকন্ডাক্টর র‍্যামউচ্চস্তরের ভাষা (BASIC, Pascal, C)IBM System/360, PDP-8
চতুর্থ প্রজন্ম (১৯৭১-বর্তমান)মাইক্রোপ্রসেসর (VLSI ও ULSI সিলিকন চিপ)সেমিকন্ডাক্টর DRAM, SRAM, Flash SSD, HDDআধুনিক ভাষা (C++, Java, Python), GUI OSIntel x86, পার্সোনাল কম্পিউটার, ম্যাক
পঞ্চম প্রজন্ম (বর্তমান ও ভবিষ্যৎ)আল্ট্রা লার্জ স্কেল ইন্টিগ্রেশন (ULSI), কৃত্রিম বুদ্ধিমত্তাহাই-ব্যান্ডউইথ ৩ডি স্ট্যাকড র‍্যাম (HBM), ক্লাউডএআই মডেল, প্যারালাল প্রসেসিং, কোয়ান্টাম এলগরিদমসুপারকম্পিউটার, জিপিইউ ক্লাস্টার, কোয়ান্টাম প্রোটোটাইপ
১.২ জন ফন নিউম্যানের সঞ্চিত প্রোগ্রাম ধারণা (Stored-Program Concept)

১৯৪৫ সালে গণিতবিদ ও পদার্থবিজ্ঞানী জন ফন নিউম্যান এক যুগান্তকারী ধারণা উপস্থাপন করেন—প্রোগ্রামের নির্দেশাবলি এবং ডেটা উভয়ই একই সাধারণ মেমোরি স্পেসে সংরক্ষিত থাকবে। এর পূর্বে কম্পিউটারের কাজ পরিবর্তন করতে শারীরিকভাবে তারের সংযোগ পরিবর্তন করতে হতো।

ফন নিউম্যান মডেলের তিনটি প্রধান উপব্যবস্থা রয়েছে:

  • সেন্ট্রাল প্রসেসিং ইউনিট (CPU): যা নির্দেশাবলি নির্বাহ করে এবং সম্পূর্ণ সিস্টেমকে নিয়ন্ত্রণ করে।
  • প্রধান মেমোরি ইউনিট (Main Memory): যেখানে ক্রমানুসারে সাজানো ঠিকানায় নির্দেশ ও অপারেন্ড সংরক্ষিত থাকে।
  • ইনপুট/আউটপুট (I/O) উপব্যবস্থা: যা ব্যবহারকারী এবং বাহ্যিক যন্ত্রাংশের সাথে যোগাযোগের মাধ্যম হিসেবে কাজ করে।
১.৩ সিপিইউ-এর অভ্যন্তরীণ অংশ ও রেজিস্টারসমূহ

সিপিইউ-এর মধ্যে দুটি প্রধান কার্যকরী ইউনিট এবং কতগুলো অতিদ্রুত অভ্যন্তরীণ রেজিস্টার থাকে:

  • অ্যারিথমেটিক লজিক ইউনিট (ALU): সমস্ত গাণিতিক হিসাবনিকাশ (যোগ, বিয়োগ, গুণ, ভাগ) এবং যৌক্তিক সিদ্ধান্ত গ্রহণ (AND, OR, NOT, XOR, মান তুলনা) সম্পাদন করে। ALU-র সাথে একটি স্ট্যাটাস বা ফ্ল্যাগস রেজিস্টার যুক্ত থাকে, যার মধ্যে জিরো ফ্ল্যাগ (Z), ক্যারি ফ্ল্যাগ (C), সাইন ফ্ল্যাগ (S) এবং ওভারফ্লো ফ্ল্যাগ (V) অবস্থান করে।
  • কন্ট্রোল ইউনিট (CU): কম্পিউটারের পরিচালক বা কন্ডাক্টর হিসেবে কাজ করে। এটি মেমোরি থেকে নির্দেশ নিয়ে আসে (ফেচ), ডিকোড করে এবং প্রয়োজনীয় টাইমিং ও কন্ট্রোল সিগন্যাল প্রেরণ করে সমস্ত অভ্যন্তরীণ ইউনিটকে পরিচালনা করে।
  • সিপিইউ অভ্যন্তরীণ রেজিস্টারসমূহ: প্রসেসরের নিজস্ব অতিদ্রুত অস্থায়ী মেমোরি সেল:
    • প্রোগ্রাম কাউন্টার (PC): পরবর্তী যে নির্দেশটি মেমোরি থেকে ফেচ করতে হবে, তার মেমোরি অ্যাড্রেস ধরে রাখে। প্রতিটি ফেচের পর এর মান স্বয়ংক্রিয়ভাবে বৃদ্ধি পায়।
    • মেমোরি অ্যাড্রেস রেজিস্টার (MAR): মেমোরির যে নির্দিষ্ট ঠিকানায় পড়া (Read) বা লেখা (Write) হবে, সেই ঠিকানাটি ধরে রাখে।
    • মেমোরি ডেটা রেজিস্টার (MDR) বা বাফার (MBR): মেমোরি থেকে পঠিত অথবা মেমোরিতে লেখার জন্য প্রস্তুতকৃত ডেটা সাময়িকভাবে ধরে রাখে।
    • ইনস্ট্রাকশন রেজিস্টার (IR): মেমোরি থেকে ফেচ করে আনা বর্তমান নির্দেশটিকে কন্ট্রোল ইউনিট ডিকোড করার সময় এই রেজিস্টারে সংরক্ষণ করা হয়।
    • অ্যাকুমুলেটর (ACC): একটি সাধারণ উদ্দেশ্যের রেজিস্টার, যা ALU দ্বারা সম্পাদিত গাণিতিক বা যৌক্তিক ক্রিয়াকলাপের অন্তর্বর্তী ফলাফল ধরে রাখে।
১.৪ নির্দেশ নির্বাহ চক্র (Fetch-Decode-Execute Cycle)

সিপিইউ ধারাবাহিকভাবে চারটি ধাপে নির্দেশ নির্বাহ করে:

  1. ফেচ (Fetch): PC-র ঠিকানা MAR-এ যায়। কন্ট্রোল ইউনিট মেমোরি রিড সংকেত পাঠায়। মেমোরি থেকে নির্দেশ ডেটা বাসের মাধ্যমে MDR-এ আসে এবং সেখান থেকে IR-এ স্থানান্তরিত হয়। একই সাথে PC-র মান পরবর্তী নির্দেশের জন্য বৃদ্ধি পায় ($PC \leftarrow PC + 1$)।
  2. ডিকোড (Decode): IR-এ রক্ষিত নির্দেশের অপকোড (Opcode) কন্ট্রোল ইউনিটের ডিকোডার দ্বারা বিশ্লেষিত হয়।
  3. এক্সিকিউট (Execute): প্রয়োজনীয় অপারেন্ড সংগ্রহ করে ALU দ্বারা সংশ্লিষ্ট গাণিতিক বা যৌক্তিক প্রক্রিয়া সম্পন্ন হয়।
  4. স্টোর (Store / Write-back): প্রাপ্ত ফলাফল অ্যাকুমুলেটরে বা নির্দিষ্ট মেমোরি লোকেশনে সংরক্ষণ করা হয়।
১.৫ সিস্টেম বাস: ডেটা বাস, অ্যাড্রেস বাস ও কন্ট্রোল বাস

সিপিইউ, মেমোরি এবং আই/ও ডিভাইসের মধ্যে বৈদ্যুতিক সংকেত আদান-প্রদানের সমান্তরাল তারের সমষ্টিকে বাস (Bus) বলা হয়:

  • ডেটা বাস (Data Bus): এটি একটি দ্বিমুখী (Bidirectional) বাস, যার মাধ্যমে প্রকৃত তথ্য ও নির্দেশ সিপিইউ এবং মেমোরির মধ্যে প্রবাহিত হয়। এর প্রস্থ (যেমন ৩২-বিট, ৬৪-বিট) সিপিইউ-এর শব্দদৈর্ঘ্য (Word Length) নির্ধারণ করে।
  • অ্যাড্রেস বাস (Address Bus): এটি একটি একমুখী (Unidirectional) বাস। সিপিইউ মেমোরির নির্দিষ্ট লোকেশন চিহ্নিত করতে এতে ঠিকানা পাঠায়। অ্যাড্রেস বাসে $k$ টি লাইন থাকলে সরাসরি $২^k$ সংখ্যক মেমোরি লোকেশন অ্যাক্সেস করা সম্ভব। উদাহরণস্বরূপ, ৩২-বিট অ্যাড্রেস বাস সর্বোচ্চ $২^{৩২} = ৪\text{ GB}$ র‍্যাম পরিচালনা করতে পারে।
  • কন্ট্রোল বাস (Control Bus): বিভিন্ন নিয়ন্ত্রণ ও টাইমিং সিগন্যাল (যেমন Memory Read, Memory Write, I/O Read, I/O Write, Clock, Reset, Interrupt) পরিবহনের জন্য ব্যবহৃত হয়।

মডিউল ২: মেমোরি স্তরবিন্যাস, ক্যাশ মেমোরি ও স্টোরেজ প্রযুক্তি

২.১ রেফারেন্সের স্থানিক ও কালিক সান্নিধ্যের নীতি (Locality of Reference)

কম্পিউটারের মেমোরি ব্যবস্থাপনা Locality of Reference নীতির ওপর নির্ভর করে:

  • কালিক সান্নিধ্য (Temporal Locality): কোনো মেমোরি লোকেশন একবার ব্যবহার হলে নিকট ভবিষ্যতে সেটি পুনরায় ব্যবহারের সম্ভাবনা অত্যন্ত বেশি থাকে (যেমন লুপের ভেতরের ভেরিয়েবল বা কাউন্টার)।
  • স্থানিক সান্নিধ্য (Spatial Locality): কোনো মেমোরি লোকেশন অ্যাক্সেস করা হলে তার সংলগ্ন আশেপাশের লোকেশনগুলোও অবিলম্বে ব্যবহৃত হওয়ার সম্ভাবনা থাকে (যেমন অ্যারের উপাদান বা পর্যায়ক্রমিক নির্দেশমালা)।
২.২ মেমোরি হায়ারার্কি পিরামিড (Memory Hierarchy)

গতি, ধারণক্ষমতা এবং প্রতি বিটের উৎপাদন ব্যয়ের মধ্যে ভারসাম্য রক্ষা করতে মেমোরিকে স্তরবিন্যাস করা হয়:

মেমোরির স্তরব্যবহৃত প্রযুক্তিঅ্যাক্সেস সময়ধারণক্ষমতাআপেক্ষিক খরচ
সিপিইউ রেজিস্টারডি ফ্লিপ-ফ্লপ সার্কিট< ১ ন্যানোসেকেন্ড (১ ক্লক সাইকেল)১ - ২ কিলোবাইটসর্বোচ্চ
L1 ক্যাশস্ট্যাটিক র‍্যাম (SRAM)১ - ২ ন্যানোসেকেন্ড৩২ - ৬৪ কিলোবাইট / কোরখুব বেশি
L2 ক্যাশস্ট্যাটিক র‍্যাম (SRAM)৩ - ৮ ন্যানোসেকেন্ড৫১২ KB - ২ মেগাবাইট / কোরবেশি
L3 ক্যাশস্ট্যাটিক র‍্যাম (SRAM, শেয়ার্ড)১০ - ২০ ন্যানোসেকেন্ড১৬ - ৯৬ মেগাবাইটমাঝারি
প্রধান মেমোরি (RAM)ডায়নামিক র‍্যাম (DRAM)৫০ - ৭০ ন্যানোসেকেন্ড৮ - ১২৮ গিগাবাইটপরিমিত
সেকেন্ডারি SSDন্যান্ড ফ্ল্যাশ (NVMe / SATA)২০ - ১০০ মাইক্রোসেকেন্ড৫১২ GB - ৪ টেরাবাইটকম
সেকেন্ডারি HDDচৌম্বকীয় ডিস্ক প্লেটার৫ - ১২ মিলিসেকেন্ড১ - ২০ টেরাবাইটসর্বনিম্ন
২.৩ প্রাথমিক মেমোরি: SRAM বনাম DRAM এবং ROM-এর প্রকারভেদ

সিপিইউ সরাসরি প্রাথমিক মেমোরির সাথে যোগাযোগ করে:

  • র‍্যাম (Random Access Memory): উদ্বায়ী (Volatile) মেমোরি, বিদ্যুৎ বিচ্ছিন্ন হলে এর তথ্য মুছে যায়। প্রকারভেদ:
    • SRAM (Static RAM): প্রতিটি মেমোরি সেল ৪ থেকে ৬টি ট্রানজিস্টর নির্মিত ফ্লিপ-ফ্লপ দিয়ে তৈরি। রিফ্রেশ করার প্রয়োজন হয় না। অতিদ্রুত গতির হওয়ায় এটি প্রসেসর ক্যাশ তৈরিতে ব্যবহৃত হয়।
    • DRAM (Dynamic RAM): প্রতিটি সেল একটি ট্রানজিস্টর ও একটি আণুবীক্ষণিক ক্যাপাসিটর (1T-1C) নিয়ে গঠিত। ক্যাপাসিটরের চার্জ ক্রমাগত ক্ষয়প্রাপ্ত হয়, তাই প্রতি সেকেন্ডে শত শত বার রিফ্রেশ করতে হয়। সস্তা ও উচ্চ ধারণক্ষমতাসম্পন্ন হওয়ায় এটি প্রধান র‍্যাম তৈরিতে ব্যবহৃত হয়।
  • রম (Read-Only Memory): অনুদ্বায়ী (Non-volatile) মেমোরি। কম্পিউটার স্টার্ট করার জন্য প্রয়োজনীয় বায়োস (BIOS/UEFI) এবং পোস্ট (POST - Power-On Self-Test) রুটিন এতে স্থায়ী থাকে। প্রকারভেদ:
    • MROM (Mask ROM): কারখানা উৎপাদনের সময় স্থায়ীভাবে ডেটা লেখা হয়, পরিবর্তনযোগ্য নয়।
    • PROM (Programmable ROM): ব্যবহারকারী বিশেষ যন্ত্রের মাধ্যমে একবার প্রোগ্রাম করতে পারেন।
    • EPROM (Erasable PROM): অতিবেগুনি (UV) রশ্মির সাহায্যে এর তথ্য মুছে ফেলে পুনরায় লেখা যায়।
    • EEPROM (Electrically Erasable PROM): বৈদ্যুতিক সংকেত দ্বারা মেমোরির তথ্য মুছে পুনরায় লেখা সম্ভব। আধুনিক ফ্ল্যাশ ড্রাইভ ও এসএসডি-এর ভিত্তি এটিই।
২.৪ ক্যাশ মেমোরির কার্যক্ষমতা: হিট রেশিও ও AMAT

সিপিইউ কোনো ডেটা চাইলে প্রথমে ক্যাশ মেমোরিতে সন্ধান করে:

  • ক্যাশ হিট (Cache Hit): ডেটাটি ক্যাশে পাওয়া গেলে তাকে হিট বলা হয় এবং তা অবিলম্বে ক্যাশ গতিতে ($T_c$) সংগৃহীত হয়।
  • ক্যাশ মিস (Cache Miss): ডেটা ক্যাশে না থাকলে প্রধান মেমোরি ($T_m$) থেকে আনতে হয়, যার ফলে অতিরিক্ত সময় নষ্ট হয় (Miss Penalty)।
  • হিট রেশিও ($H$): $H = \frac{\text{ক্যাশ হিটের সংখ্যা}}{\text{মোট মেমোরি অ্যাক্সেস সংখ্যা}}$।
  • গড় মেমোরি অ্যাক্সেস সময় (AMAT): $T_{\text{avg}} = T_c + (১ - H) \times T_m$।
২.৫ সেকেন্ডারি স্টোরেজ: হার্ড ডিস্ক (HDD) বনাম সলিড স্টেট ড্রাইভ (SSD)

স্থায়ীভাবে ডেটা সংরক্ষণের জন্য সেকেন্ডারি মেমোরি ব্যবহৃত হয়:

  • হার্ড ডিস্ক ড্রাইভ (HDD): চৌম্বকীয় প্লেটারযুক্ত যান্ত্রিক মাধ্যম। ট্র্যাক, সেক্টর ও হেড মুভমেন্টের কারণে এতে সিক টাইম (Seek Time) ও রোটেশনাল লেটেন্সি থাকে। গতি অপেক্ষাকৃত ধীর (~১৫০ MB/s)।
  • সলিড স্টেট ড্রাইভ (SSD): কোনো চলমান যন্ত্রাংশ নেই, বিশুদ্ধ ন্যান্ড ফ্ল্যাশ চিপে বৈদ্যুতিক চার্জের মাধ্যমে তথ্য সংরক্ষিত থাকে। আধুনিক NVMe ড্রাইভ প্রতি সেকেন্ডে ৫০০০-৭০০০ মেগাবাইট পর্যন্ত ডেটা আদান-প্রদান করতে পারে।

মডিউল ৩: ডেটা উপস্থাপনা ও সংখ্যা পদ্ধতি

৩.১ পজিশনাল সংখ্যা পদ্ধতি ও রেডিক্সের ধারণা

পজিশনাল সংখ্যা পদ্ধতিতে প্রতিটি অঙ্কের মান তার নিজস্ব মান এবং অবস্থানের ঘাতের (Radix বা Base $r$) ওপর নির্ভর করে:

$$\text{মান} = \sum_{i=-m}^{n-1} d_i \cdot r^i = d_{n-1} r^{n-1} + \dots + d_0 r^0 + d_{-1} r^{-1} + \dots + d_{-m} r^{-m}$$

কম্পিউটার বিজ্ঞানে বহুল ব্যবহৃত চারটি সংখ্যা পদ্ধতি হলো:

  • ডেসিমেল (দশমিক - বেস ১০): ১০টি চিহ্ন ($০, ১, ২, ৩, ৪, ৫, ৬, ৭, ৮, ৯$)।
  • বাইনারি (দ্বিমিক - বেস ২): ২টি চিহ্ন ($০, ১$)। কম্পিউটারের ডিজিটাল সার্কিটের মূল ভাষা।
  • অক্টাল (অষ্টক - বেস ৮): ৮টি চিহ্ন ($০, ১, ২, ৩, ৪, ৫, ৬, ৭$)। প্রতিটি অক্টাল অঙ্ক ঠিক ৩-বিট বাইনারির সমান ($২^৩ = ৮$)।
  • হেক্সাডেসিমেল (ষোড়শ - বেস ১৬): ১৬টি চিহ্ন ($০-৯$ এবং $A=১০, B=১১, C=১২, D=১৩, E=১৪, F=১৫$)। প্রতিটি হেক্স অঙ্ক ঠিক ৪-বিট বাইনারির সমান ($২^৪ = ১৬$)।
৩.২ যেকোনো বেস থেকে ডেসিমেল রূপান্তর

যেকোনো বেসের সংখ্যাকে ডেসিমেলে রূপান্তর করতে প্রতিটি অঙ্কের সাথে তার স্থানীয় ঘাত ($r^i$) গুণ করে যোগফল নির্ণয় করতে হয়:

উদাহরণ ১ (বাইনারি থেকে ডেসিমেল): $(১১০১০১.১০১)_২$ কে ডেসিমেলে রূপান্তর করো।
পূর্ণসংখ্যা: $১\cdot ২^৫ + ১\cdot ২^৪ + ০\cdot ২^৩ + ১\cdot ২^২ + ০\cdot ২^১ + ১\cdot ২^০ = ৩২ + ১৬ + ০ + ৪ + ০ + ১ = ৫৩$
ভগ্নাংশ: $১\cdot ২^{-১} + ০\cdot ২^{-২} + ১\cdot ২^{-৩} = ০.৫ + ০ + ০.১২৫ = ০.৬২৫$
উত্তর: $(১১০১০১.১০১)_২ = (৫৩.৬২৫)_{১০}$
৩.৩ ডেসিমেল থেকে অন্যান্য বেসে রূপান্তর
  • পূর্ণসংখ্যার রূপান্তর: ক্রমিক ভাগ পদ্ধতি (Successive Division)। ডেসিমেল সংখ্যাটিকে উদ্দিষ্ট বেস $r$ দিয়ে ক্রমাগত ভাগ করতে হয় এবং ভাগশেষগুলো সংরক্ষণ করতে হয়। নিচ থেকে উপরের দিকে ভাগশেষগুলো লিখলে রূপান্তরিত মান পাওয়া যায় (সর্বশেষ ভাগশেষটি হলো MSD)।
  • ভগ্নাংশের রূপান্তর: ক্রমিক গুণ পদ্ধতি (Successive Multiplication)। ভগ্নাংশটিকে উদ্দিষ্ট বেস $r$ দিয়ে ক্রমাগত গুণ করে প্রাপ্ত পূর্ণসংখ্যাগুলো উপর থেকে নিচে সাজাতে হয়।
৩.৪ বাইনারি, অক্টাল ও হেক্সাডেসিমেলের সরাসরি রূপান্তর (বিট গ্রুপিং পদ্ধতি)

অক্টাল ও হেক্সাডেসিমেলের রূপান্তরে কোনো গুণ বা ভাগের প্রয়োজন হয় না:

  • বাইনারি থেকে অক্টাল: রেডিক্স পয়েন্টের বামে পূর্ণসংখ্যার জন্য ডান দিক থেকে বামে এবং ভগ্নাংশের জন্য বাম দিক থেকে ডানে ৩-বিট করে দল গঠন করো। প্রতিটি ৩-বিট দলের জন্য সমতুল্য অক্টাল অঙ্ক বসাও।
  • বাইনারি থেকে হেক্সাডেসিমেল: একইভাবে ৪-বিট করে দল (নিবল) গঠন করো এবং সমতুল্য হেক্সাডেসিমেল চিহ্ন বসাও।
  • অক্টাল থেকে হেক্সাডেসিমেল: প্রথমে প্রতিটি অক্টাল অঙ্ককে ৩-বিট বাইনারিতে রূপান্তর করো, তারপর প্রাপ্ত বাইনারি ধারাটিকে ৪-বিট করে সাজিয়ে হেক্সাডেসিমেল মান নির্ণয় করো।

মডিউল ৪: চিহ্নযুক্ত সংখ্যা, ২-এর পরিপূরক ও ক্যারেক্টার এনকোডিং

৪.১ চিহ্নযুক্ত বাইনারি সংখ্যার রূপরেখা

কম্পিউটার মেমোরিতে ধনাত্মক ও ঋণাত্মক উভয় সংখ্যাই সংরক্ষণের জন্য তিনটি পদ্ধতি ব্যবহৃত হয়:

  • সাইন-ম্যাগনিটিউড রূপ: সবচেয়ে বামের বিটটি (MSB) চিহ্নের নির্দেশক ($০ = \text{ধনাত্মক}$, $১ = \text{ঋণাত্মক}$) এবং বাকি $n-১$ বিট সংখ্যার মান প্রকাশ করে। ত্রুটি: এতে শূন্যের দুটি রূপ তৈরি হয় ($+০ = ০০০০০০০০_২$ এবং $-০ = ১০০০‌০০০০_২$), যা হার্ডওয়্যার তৈরিকে জটিল করে তোলে।
  • ১-এর পরিপূরক (1's Complement): ধনাত্মক সংখ্যা স্বাভাবিক বাইনারির মতো থাকে। ঋণাত্মক সংখ্যার ক্ষেত্রে সংশ্লিষ্ট ধনাত্মক সংখ্যার প্রতিটি বিটকে উল্টে দিতে হয় (০ কে ১ এবং ১ কে ০)। ত্রুটি: এতেও শূন্যের দ্বৈত রূপ থাকে এবং যোগের সময় এন্ড-অ্যারাউন্ড ক্যারি যোগ করতে হয়।
  • ২-এর পরিপূরক (2's Complement): আধুনিক কম্পিউটারের সার্বজনীন মানদণ্ড। কোনো সংখ্যার ১-এর পরিপূরকের সাথে ১ যোগ করলে তার ২-এর পরিপূরক পাওয়া যায়: $\text{২-এর পরিপূরক} = \text{১-এর পরিপূরক} + ১$।
৪.২ ২-এর পরিপূরকের অপরিহার্য সুবিধাসমূহ
  1. অনন্য শূন্য (Unique Zero): এতে শূন্যের কেবল একটিই রূপ থাকে ($০০০০০০০০_২$)। শূন্যের ২-এর পরিপূরক নির্ণয় করলে ক্যারি বাদ গিয়ে পুনরায় শূন্যই পাওয়া যায়।
  2. বিয়োগের পরিবর্তে যোগের সার্কিট: যেকোনো বিয়োগ $A - B$ কে $A + (\text{B-এর ২-এর পরিপূরক})$ হিসেবে সম্পন্ন করা যায়। ফলে সিপিইউ-তে আলাদা কোনো বিয়োগ সার্কিটের প্রয়োজন হয় না।

$n$-বিট বিশিষ্ট ২-এর পরিপূরক পদ্ধতির ব্যাপ্তি হলো:

$$\text{সীমা} = [-২^{n-১}, +২^{n-১} - ১]$$

৮-বিট বাইটের ক্ষেত্রে সীমা: $[-১২৮ \text{ থেকে } +১২৭]$। ১৬-বিটের ক্ষেত্রে: $[-৩২৭৬৮ \text{ থেকে } +৩২৭৬৭]$।

৪.৩ পাটিগণিতীয় ওভারফ্লো (Arithmetic Overflow)

যখন দুটি সংখ্যার গাণিতিক ফলাফল রেজিস্টারের সর্বোচ্চ ধারণক্ষমতাকে অতিক্রম করে, তখন ওভারফ্লো ঘটে:

  • দুটি বিপরীত চিহ্নের সংখ্যা যোগ করলে কখনো ওভারফ্লো হতে পারে না।
  • দুটি ধনাত্মক সংখ্যা যোগ করার পর ফলাফল ঋণাত্মক দেখালে অথবা দুটি ঋণাত্মক সংখ্যা যোগ করার পর ফলাফল ধনাত্মক দেখালে ওভারফ্লো ঘটে।
  • হার্ডওয়্যার শনাক্তকরণ নিয়ম: সাইন বিটে প্রবেশকারী ক্যারি ($C_{\text{in}}$) এবং সাইন বিট থেকে বের হওয়া ক্যারি ($C_{\text{out}}$) অসমান হলে ওভারফ্লো ঘটে: $V = C_{\text{in}} \oplus C_{\text{out}} = ১$।
৪.৪ ক্যারেক্টার এনকোডিং পদ্ধতি: ASCII, ISCII ও Unicode
  • ASCII (American Standard Code for Information Interchange): ১৯৬৩ সালে প্রবর্তিত। মূল ASCII হলো ৭-বিট কোড, যা $২^৭ = ১২৮$ টি অক্ষর ও চিহ্ন সংজ্ঞায়িত করে ('A' = ৬৫, 'a' = ৯৭, '0' = ৪৮)। বর্ধিত (Extended) ASCII ৮-বিট ব্যবহার করে ২৫৬টি চিহ্ন সমর্থন করে।
  • ISCII (Indian Script Code for Information Interchange): ভারতীয় ভাষার জন্য ব্যুরো অফ ইন্ডিয়ান স্ট্যান্ডার্ডস (BIS) কর্তৃক প্রণীত ৮-বিট কোড। এর প্রথম ১২৮টি কোড ASCII-র অনুরূপ এবং পরবর্তী ১২৮টি কোডে বাংলা, দেবনাগরী ইত্যাদি ভারতীয় লিপির ধ্বনিগত সাদৃশ্যযুক্ত বর্ণ সন্নিবেশিত।
  • ইউনিকোড (Unicode): পৃথিবীর সমস্ত ভাষার লিখিত বর্ণ, গাণিতিক প্রতীক ও ইমোজি প্রকাশের বিশ্বজনীন মানদণ্ড। এর কোড স্পেস ১১ লক্ষেরও বেশি। প্রধান ফরম্যাটসমূহ:
    • UTF-8: ১ থেকে ৪ বাইটের পরিবর্তনশীল দৈর্ঘ্যের এনকোডিং। এটি ASCII-এর সাথে সম্পূর্ণ সামঞ্জস্যপূর্ণ এবং ইন্টারনেটের সর্বাধিক ব্যবহৃত মানদণ্ড।
    • UTF-16: ২ বা ৪ বাইট ব্যবহার করে, জাভা ও উইন্ডোজের অভ্যন্তরীণ প্রক্রিয়াকরণে ব্যবহৃত হয়।
    • UTF-32: প্রতিটি অক্ষরের জন্য স্থির ৪ বাইট (৩২-বিট) ব্যবহার করে।

মডিউল ৫: বুলিয়ান বীজগণিত, লজিক গেট ও সার্বজনীন গেট দ্বারা সার্কিট রূপায়ণ

৫.১ বুলিয়ান বীজগণিতের স্বতঃসিদ্ধ ও মৌলিক সূত্রসমূহ

১৮৫৪ সালে ইংরেজ গণিতবিদ জর্জ বুল দ্বিমিক চলকের ওপর ভিত্তি করে বুলিয়ান বীজগণিত আবিষ্কার করেন। প্রধান সূত্রাবলি নিচে প্রদত্ত হলো:

সূত্রের নামOR রূপ (যৌক্তিক যোগ)AND রূপ (যৌক্তিক গুণ)
অভেদ সূত্র (Identity Law)$A + ০ = A$$A \cdot ১ = A$
অন্বয় / শূন্য সূত্র (Null Law)$A + ১ = ১$$A \cdot ০ = ০$
আইডেমপোটেন্ট সূত্র (Idempotent Law)$A + A = A$$A \cdot A = A$
পূরক সূত্র (Complement Law)$A + \overline{A} = ১$$A \cdot \overline{A} = ০$
বিনিময় সূত্র (Commutative Law)$A + B = B + A$$A \cdot B = B \cdot A$
সংযোগ সূত্র (Associative Law)$A + (B + C) = (A + B) + C$$A \cdot (B \cdot C) = (A \cdot B) \cdot C$
বণ্টন সূত্র (Distributive Law)$A + (B \cdot C) = (A + B) \cdot (A + C)$$A \cdot (B + C) = (A \cdot B) + (A \cdot C)$
অপশোষণ সূত্র (Absorption Law)$A + (A \cdot B) = A$$A \cdot (A + B) = A$
দ্বৈত নিবর্তন (Involution)$\overline{\overline{A}} = A$
৫.২ দ্বৈত নীতি (Principle of Duality)

দ্বৈত নীতি অনুযায়ী, কোনো বৈধ বুলিয়ান সমীকরণের প্রতিটি AND সংকেতকে OR দ্বারা, OR সংকেতকে AND দ্বারা এবং ০ ও ১-কে পরস্পরের দ্বারা প্রতিস্থাপন করলে যে নতুন সমীকরণ পাওয়া যায়, তাও সম্পূর্ণ বৈধ থাকে।

৫.৩ ডি মর্গ্যানের উপপাদ্য (De Morgan's Theorems)
  • প্রথম উপপাদ্য: যেকোনো দুটি চলকের যৌক্তিক যোগের পূরক তাদের স্বতন্ত্র পূরকের যৌক্তিক গুণের সমান:$$\overline{A + B} = \overline{A} \cdot \overline{B}$$
  • দ্বিতীয় উপপাদ্য: যেকোনো দুটি চলকের যৌক্তিক গুণের পূরক তাদের স্বতন্ত্র পূরকের যৌক্তিক যোগের সমান:$$\overline{A \cdot B} = \overline{A} + \overline{B}$$
৫.৪ লজিক গেট ও সার্বজনীন গেট (Universal Gates)

লজিক গেট হলো ডিজিটাল সার্কিটের মৌলিক বিল্ডিং ব্লক:

  • মৌলিক গেটসমূহ: NOT (ইনভার্টার, $Y = \overline{A}$), AND ($Y = A \cdot B$), OR ($Y = A + B$)।
  • সার্বজনীন গেট (NAND ও NOR): যে গেটগুলোর সাহায্যে অন্য কোনো গেটের সাহায্য ছাড়াই যেকোনো বুলিয়ান সমীকরণ বা সমস্ত মৌলিক গেট তৈরি করা যায়, তাদের সার্বজনীন গেট বলা হয়।
    • NAND গেট: AND-এর সাথে NOT যুক্ত করে গঠিত: $Y = \overline{A \cdot B}$। সমস্ত ইনপুট ১ হলেই কেবল আউটপুট ০ হয়।
    • NOR গেট: OR-এর সাথে NOT যুক্ত করে গঠিত: $Y = \overline{A + B}$। সমস্ত ইনপুট ০ হলেই কেবল আউটপুট ১ হয়।
  • বিশেষ গেটসমূহ: XOR (এক্সক্লুসিভ-OR, $Y = A \oplus B = \overline{A}B + A\overline{B}$, ইনপুট দুটি ভিন্ন হলে আউটপুট ১ হয়) এবং XNOR ($Y = \overline{A \oplus B} = AB + \overline{A}\,\overline{B}$)।
৫.৫ ক্যানোনিকাল রূপ: মিনটার্ম (SOP) ও ম্যাক্সটার্ম (POS)
  • মিনটার্ম ও SOP (Sum of Products): যে গুণফল পদে সমীকরণের সমস্ত চলক মূল বা পূরক আকারে উপস্থিত থাকে এবং যার আউটপুট ১ হয়। ফাংশন: $F(A,B,C) = \sum m(১, ৩, ৫, ৭)$।
  • ম্যাক্সটার্ম ও POS (Product of Sums): যে যোগফল পদে সমীকরণের সমস্ত চলক মূল বা পূরক আকারে উপস্থিত থাকে এবং যার আউটপুট ০ হয়। ফাংশন: $F(A,B,C) = \prod M(০, ২, ৪, ৬)$।

মডিউল ৬: সফটওয়্যারের প্রকারভেদ, অনুবাদক ও অপারেটিং সিস্টেম

৬.১ সফটওয়্যারের শ্রেণিবিন্যাস

কম্পিউটার সফটওয়্যারকে মূলত দুটি ভাগে ভাগ করা যায়:

  • সিস্টেম সফটওয়্যার: যে সফটওয়্যার সরাসরি কম্পিউটারের হার্ডওয়্যার পরিচালনা করে এবং ব্যবহারকারী ও অ্যাপ্লিকেশনের মধ্যে সেতুবন্ধন রচনা করে (যেমন ওএস, কম্পাইলার, ডিভাইস ড্রাইভার, ইউটিলিটি)।
  • অ্যাপ্লিকেশন সফটওয়্যার: ব্যবহারকারীর নির্দিষ্ট ব্যবহারিক কাজ সমাধানের জন্য তৈরি সফটওয়্যার (যেমন ওয়ার্ড প্রসেসর, ওয়েব ব্রাউজার, স্প্রেডশিট, কাস্টমাইজড স্কুল ম্যানেজমেন্ট সিস্টেম)।
৬.২ ভাষা অনুবাদক: অ্যাসেম্বলার, কম্পাইলার ও ইন্টারপ্রেটার
বৈশিষ্ট্যঅ্যাসেম্বলারকম্পাইলারইন্টারপ্রেটার
ইনপুট ভাষাঅ্যাসেম্বলি ভাষা (নেমোনিক্স)উচ্চস্তরের ভাষা (C, C++, Rust)উচ্চস্তরের ভাষা (Python, JS)
অনুবাদ পদ্ধতিপ্রতি লাইনের নেমোনিককে মেশিন কোডে রূপান্তরসম্পূর্ণ প্রোগ্রামটি একবারে পড়ে রূপান্তর করেলাইন বাই লাইন পড়ে সাথে সাথে নির্বাহ করে
অবজেক্ট কোডঅবজেক্ট ফাইল তৈরি করেস্বাধীন অবজেক্ট কোড (.exe) তৈরি করেকোনো অবজেক্ট ফাইল তৈরি করে না
নির্বাহের গতিখুব দ্রুতএকবার কম্পাইল হলে নির্বাহ অতিদ্রুতঅন-দ্য-ফ্লাই অনুবাদের কারণে অপেক্ষাকৃত ধীর
ভুল প্রদর্শনলাইন নম্বরসহ ভুল প্রদর্শনসম্পূর্ণ ফাইলের সমস্ত সিনট্যাক্স ভুল একসাথে দেখায়প্রথম ভুলেই প্রোগ্রামের কাজ থামিয়ে দেয়
৬.৩ লিঙ্কার ও লোডার
  • লিঙ্কার: কম্পাইলার দ্বারা প্রস্তুতকৃত একাধিক অবজেক্ট মডিউল এবং সিস্টেম লাইব্রেরিকে যুক্ত করে একটি একক এক্সিকিউটেবল ফাইল (.exe) প্রস্তুত করে।
  • লোডার: অপারেটিং সিস্টেমের একটি অংশ, যা এক্সিকিউটেবল ফাইলটিকে সেকেন্ডারি স্টোরেজ থেকে প্রধান মেমোরিতে (RAM) লোড করে এবং প্রসেসরকে প্রোগ্রামের নিয়ন্ত্রণ হস্তান্তর করে।
৬.৪ অপারেটিং সিস্টেমের মূল দায়িত্বসমূহ
  1. প্রসেসর ম্যানেজমেন্ট: প্রসেসের সৃষ্টি, সমাপ্তি এবং সিপিইউ শিডিউলিং (FCFS, SJF, রাউন্ড রবিন, প্রায়োরিটি)।
  2. মেমোরি ম্যানেজমেন্ট: র‍্যামের স্থান বরাদ্দ এবং ভার্চুয়াল মেমোরি নিয়ন্ত্রণ (ডিমান্ড পেজিং ও পেজ রিপ্লেসমেন্ট)।
  3. ফাইল ম্যানেজমেন্ট: ফাইল ডিরেক্টরি কাঠামো, অনুমতি নিয়ন্ত্রণ (Read, Write, Execute) এবং ডিস্ক স্টোরেজ ম্যাপিং।
  4. ডিভাইস ম্যানেজমেন্ট: ডিভাইস ড্রাইভার নিয়ন্ত্রণ এবং স্পুলিং (SPOOLing - Simultaneous Peripheral Operations On-Line) পদ্ধতি, যার মাধ্যমে প্রিন্টারের মতো ধীরগতির ডিভাইসের কাজ প্রথমে ডিস্কে জমা রাখা হয় যাতে সিপিইউ আটকে না থাকে।
  5. নিরাপত্তা ও সুরক্ষা: পাসওয়ার্ড প্রমাণীকরণ এবং ব্যবহারকারীর ডেটার অননুমোদিত অ্যাক্সেস রোধ।
৬.৫ অপারেটিং সিস্টেমের প্রকারভেদ

সিঙ্গেল-ইউজার (MS-DOS), মাল্টিটাস্কিং (Windows, macOS), মাল্টি-ইউজার টাইম-শেয়ারিং (Linux, UNIX), এবং রিয়েল-টাইম ওএস (RTOS - যেমন স্পেসক্র্যাফট বা পেসমেকারে ব্যবহৃত হার্ড RTOS)।

প্রোগ্রামিং সিনট্যাক্স, কমান্ড ও অনুবাদক নীতি

পজিশনাল সংখ্যা পদ্ধতির সাধারণ বিস্তার
$$N_r = sum_{i=-m}^{n-1} d_i * r^i$$
n-বিট ২-এর পরিপূরকের ব্যাপ্তি
$$Range = [-2^{n-1}, +2^{n-1} - 1]$$
ডি মর্গ্যানের প্রথম উপপাদ্য
overline{A + B} = overline{A} * overline{B}
ডি মর্গ্যানের দ্বিতীয় উপপাদ্য
overline{A * B} = overline{A} + overline{B}
সর্বোচ্চ মেমোরি ধারণক্ষমতা
$$M = 2^k * w bytes$$
গড় মেমোরি অ্যাক্সেস সময় (AMAT)
$$AMAT = T_cache + (1 - H) * T_main$$

সমাধানকৃত উদাহরণ ও প্রয়োগ (Solved Examples)

উদাহরণ 1
ধাপে ধাপে সমাধান / উত্তর:
ধাপ ১: পূর্ণসংখ্যা অংশের রূপান্তর (১০৯_১০):
১০৯ কে ২ দিয়ে ক্রমাগত ভাগ করে ভাগশেষ নির্ণয় করি:
১০৯ / ২ = ৫৪, ভাগশেষ ১ (LSB)
৫৪ / ২ = ২৭, ভাগশেষ ০
২৭ / ২ = ১৩, ভাগশেষ ১
১৩ / ২ = ৬, ভাগশেষ ১
৬ / ২ = ৩, ভাগশেষ ০
৩ / ২ = ১, ভাগশেষ ১
১ / ২ = ০, ভাগশেষ ১ (MSB)
নিচ থেকে উপরে ভাগশেষগুলো লিখে পাই: (১০৯)_১০ = (১১০১১০১)_২।

ধাপ ২: ভগ্নাংশ অংশের রূপান্তর (০.৬২৫_১০):
০.৬২৫ কে ২ দিয়ে ক্রমাগত গুণ করি:
০.৬২৫ * ২ = ১.২৫০ -> পূর্ণসংখ্যা ১
০.২৫০ * ২ = ০.৫০০ -> পূর্ণসংখ্যা ০
০.৫০০ * ২ = ১.০০০ -> পূর্ণসংখ্যা ১ (ভগ্নাংশ সমাপ্ত)
উপর থেকে নিচে পূর্ণসংখ্যাগুলো লিখে পাই: (০.৬২৫)_১০ = (০.১০১)_২।
অতএব: (১০৯.৬২৫)_১০ = (১১০১১০১.১০১)_২।

ধাপ ৩: বিট গ্রুপিং করে অক্টালে রূপান্তর (৩-বিট দল):
রেডিক্স পয়েন্ট থেকে ৩-বিট করে সাজাই:
পূর্ণসংখ্যা: (০০১)(১০১)(১০১) -> ১, ৫, ৫
ভগ্নাংশ: (১০১) -> ৫
অতএব: (১০৯.৬২৫)_১০ = (১৫৫.৫)_৮।

ধাপ ৪: বিট গ্রুপিং করে হেক্সাডেসিমেলে রূপান্তর (৪-বিট দল):
রেডিক্স পয়েন্ট থেকে ৪-বিট করে সাজাই:
পূর্ণসংখ্যা: (০১১০)(১১০১) -> ৬, D (যেহেতু ১৩ = D)
ভগ্নাংশ: (১০১০) -> A (যেহেতু ১০ = A)
অতএব: (১০৯.৬২৫)_১০ = (6D.A)_১৬।
উদাহরণ 2
ধাপে ধাপে সমাধান / উত্তর:
অংশ ক: (+৪৩)_১০ - (+২৭)_১০ সমাধান:
১. +৪৩ এর ৮-বিট বাইনারি: ০০১০১০১১_২।
২. +২৭ এর ৮-বিট বাইনারি: ০০০১১০১১_২।
৩. -২৭ এর ২-এর পরিপূরক নির্ণয়:
১-এর পরিপূরক = ১১১০০১০০_২।
২-এর পরিপূরক = ১১১০০১০০ + ১ = ১১১০০১০১_২।
৪. যোগ করি (+৪৩) এবং (-২৭):
  ০০১০১০১১ (+৪৩)
+ ১১১০০১০১ (-২৭)
------------
(১)০০MDEw০০০
৫. ২-এর পরিপূরক নিয়মে ৯ম বিট (ক্যারি) বর্জন করা হয়।
অবশিষ্ট ৮-বিট হলো ০০০১০০০০_২ = ১৬_১০। হিসাব সঠিক, কারণ ৪৩ - ২৭ = +১৬।

অংশ খ: (-৭৫)_১০ + (-৮০)_১০ এবং ওভারফ্লো পরীক্ষা:
১. -৭৫ এর ২-এর পরিপূরক = ১০১১০১০১_২।
২. -৮০ এর ২-এর পরিপূরক = ১০১১০০০০_২।
৩. দুটি ঋণাত্মক সংখ্যা যোগ করি:
  ১০১১০১০১ (-৭৫)
+ ১০১১০০০০ (-৮০)
------------
(১)০১১০MDEw
৪. দুটি ঋণাত্মক সংখ্যা (MSB=১) যোগ করে ধনাত্মক ফলাফল (MSB=০) পাওয়া গেছে, যা অসম্ভব!
৫. ওভারফ্লো সূত্র: ক্যারি-ইন $C_{\text{in}} = ০$, ক্যারি-আউট $C_{\text{out}} = ১$।
$V = C_{\text{in}} \oplus C_{\text{out}} = ০ \oplus ১ = ১$ (ওভারফ্লো ঘটেছে)।
কারণ: প্রকৃত যোগফল -১৫৫, যা ৮-বিট ২-এর পরিপূরকের সর্বনিম্ন সীমা -১২৮ অপেক্ষা ক্ষুদ্রতর।
উদাহরণ 3
ধাপে ধাপে সমাধান / উত্তর:
ধাপ ১: ডবল ইনভার্সন (Involution) প্রয়োগ:
F = overline{overline{A * overline{B} + overline{A} * C}}

ধাপ ২: ডি মর্গ্যানের প্রথম সূত্র প্রয়োগ:
F = overline{(overline{A * overline{B}}) * (overline{overline{A} * C})}
সমীকরণটি সরাসরি NAND গেটের কাঠামোর রূপ পরিগ্রহ করেছে!

ধাপ ৩: প্রতিটি গেটের সংযোগ:
১. B ইনপুটকে একটি NAND গেটের উভয় প্রান্তে যুক্ত করে পাই overline{B} [গেট ১]।
২. A এবং overline{B} কে NAND গেটে প্রবেশ করিয়ে পাই overline{A * overline{B}} [গেট ২]।
৩. A ইনপুটকে একটি NAND গেটের উভয় প্রান্তে যুক্ত করে পাই overline{A} [গেট ৩]।
৪. overline{A} এবং C কে NAND গেটে প্রবেশ করিয়ে পাই overline{overline{A} * C} [গেট ৪]।
৫. গেট ২ এবং গেট ৪ এর আউটপুটকে চূড়ান্ত NAND গেটে প্রবেশ করালে F পাওয়া যায় [গেট ৫]।

উত্তর: এই সার্কিটটি তৈরি করতে মোট ৫টি ২-ইনপুট NAND গেট প্রয়োজন।
উদাহরণ 4
ধাপে ধাপে সমাধান / উত্তর:
অংশ ক: বীজগণিতীয় সরলীকরণ:
১. প্রথম দুটি পদ থেকে overline{A}*overline{C} কমন নিই:
overline{A}*overline{C} * (overline{B} + B) = overline{A}*overline{C} * ১ = overline{A}*overline{C}।
২. তৃতীয় ও চতুর্থ পদ থেকে A*overline{C} কমন নিই:
A*overline{C} * (overline{B} + B) = A*overline{C} * ১ = A*overline{C}।
৩. সমীকরণটি দাঁড়ায়: F = overline{A}*overline{C} + A*overline{C} + A*B*C।
৪. প্রথম দুটি পদ থেকে overline{C} কমন নিই:
overline{C} * (overline{A} + A) + A*B*C = overline{C} * ১ + A*B*C = overline{C} + A*B*C।
৫. বণ্টন সূত্র প্রয়োগ করি [X + YZ = (X + Y)(X + Z)]:
overline{C} + (AB)*C = (overline{C} + AB) * (overline{C} + C) = (overline{C} + AB) * ১ = overline{C} + AB।
সরলীকৃত সমীকরণ: F = overline{C} + A*B।

অংশ খ: ক্যানোনিকাল মিনটার্ম নির্ণয়:
মূল সমীকরণের পদগুলোর বাইনারি মান:
overline{A}*overline{B}*overline{C} = ০০০_২ = m_০
overline{A}*B*overline{C} = ০১০_২ = m_২
A*overline{B}*overline{C} = ১০০_২ = m_৪
A*B*overline{C} = ১১০_২ = m_৬
A*B*C = ১১১_২ = m_৭
অতএব মিনটার্ম রূপ: F(A, B, C) = sigma m(০, ২, ৪, ৬, ৭)।
উদাহরণ 5
ধাপে ধাপে সমাধান / উত্তর:
অংশ ক: সর্বোচ্চ মেমোরি ধারণক্ষমতা:
১. অ্যাড্রেস বাসের লাইন সংখ্যা k = ২৪।
২. মোট স্বতন্ত্র লোকেশন সংখ্যা = ২^k = ২^২৪ টি।
৩. বাইট-অ্যাড্রেসেবল ব্যবস্থায় প্রতিটি লোকেশনে ১ বাইট থাকে।
৪. মেমোরি ক্ষমতা = ২^২৪ বাইট = ২^৪ * ২^২০ বাইট = ১৬ * ১ মেগাবাইট = ১৬ MB।

অংশ খ: র‍্যাম চিপের সংখ্যা নির্ণয়:
১. মোট প্রয়োজনীয় মেমোরি ক্ষমতা = ১৬ MB = ১৬ * ১০২৪ KB * ৮ বিট।
২. প্রতিটি চিপের ক্ষমতা = ৫১২ KB * ৮ বিট।
৩. প্রয়োজনীয় মোট চিপ সংখ্যা = (মোট মেমোরি) / (একটি চিপের ক্ষমতা)
চিপ সংখ্যা = (১৬ * ১০২৪ KB * ৮) / (৫১২ KB * ৮) = ১৬ / ০.৫ = ৩২টি চিপ।
উদাহরণ 6
ধাপে ধাপে সমাধান / উত্তর:
অংশ ক: গড় CPI নির্ণয়:
CPI_avg = (০.৪০ * ১) + (০.৩০ * ৪) + (০.৩০ * ২)
CPI_avg = ০.৪০ + ১.২০ + ০.৬০ = ২.২০ সাইকেল/নির্দেশ।

অংশ খ: মোট এক্সিকিউশন টাইম:
১. এক ক্লক সাইকেলের সময় (T_clock) = ১ / (২.৫ * ১০^৯ Hz) = ০.৪ ন্যানোসেকেন্ড (০.৪ * ১০^-৯ সে)।
২. মোট ক্লক সাইকেল সংখ্যা = নির্দেশ সংখ্যা * CPI = (১.৫ * ১০^৮) * ২.২০ = ৩.৩ * ১০^৮ সাইকেল।
৩. এক্সিকিউশন টাইম = মোট সাইকেল * T_clock = (৩.৩ * ১০^৮) * (০.৪ * ১০^-৯) = ০.১৩২ সেকেন্ড (১৩২ মিলিসেকেন্ড)।

অংশ গ: MIPS রেটিং:
MIPS = (ক্লক ফ্রিকোয়েন্সি MHz এ) / CPI
ফ্রিকোয়েন্সি = ২.৫ GHz = ২৫০০ MHz।
MIPS = ২৫০০ / ২.২০ = ১১৩৬.৩৬ MIPS।

সাধারণ ভুলত্রুটি ও সতর্কতা (Common Traps)

সাধারণ ভুল ধারণা

ভগ্নাংশের রূপান্তরে প্রাপ্ত পূর্ণসংখ্যাগুলো নিচ থেকে উপরে লেখা।

সঠিক পদ্ধতি ও সমাধান

ভগ্নাংশের ক্রমিক গুণ পদ্ধতিতে প্রাপ্ত পূর্ণসংখ্যাগুলো সর্বদা উপর থেকে নিচে (TOP to BOTTOM) লিখতে হয়।

সাধারণ ভুল ধারণা

অ্যাড্রেস বাসকে দ্বিমুখী মনে করা।

সঠিক পদ্ধতি ও সমাধান

অ্যাড্রেস বাস সর্বদা একমুখী (Unidirectional)—সিপিইউ কেবল মেমোরিতে ঠিকানা প্রেরণ করে। কেবল ডেটা বাস দ্বিমুখী।

সাধারণ ভুল ধারণা

ধনাত্মক সংখ্যার ২-এর পরিপূরক বের করে ভুল করা।

সঠিক পদ্ধতি ও সমাধান

ধনাত্মক সংখ্যার ট্রু বাইনারি, ১-এর পরিপূরক ও ২-এর পরিপূরক একই থাকে (MSB সর্বদা ০)। পরিপূরক কেবল ঋণাত্মক সংখ্যার ক্ষেত্রে প্রযোজ্য।

সাধারণ ভুল ধারণা

ডি মর্গ্যানের সূত্রে অপারেটর পরিবর্তন করতে ভুলে যাওয়া (যেমন overline{A+B} = overline{A}+overline{B} লেখা)।

সঠিক পদ্ধতি ও সমাধান

চিহ্ন পরিবর্তন করা বাধ্যতামূলক: overline{A+B} হবে overline{A} * overline{B} (OR পরিবর্তিত হয়ে AND হবে)।

সাধারণ ভুল ধারণা

কম্পাইলার ও ইন্টারপ্রেটারের কার্যপদ্ধতি গুলিয়ে ফেলা।

সঠিক পদ্ধতি ও সমাধান

কম্পাইলার সম্পূর্ণ প্রোগ্রাম একবারে অনুবাদ করে এক্সিকিউটেবল ফাইল বানায়; ইন্টারপ্রেটার লাইন বাই লাইন অনুবাদ করে তাৎক্ষণিক চালায়।

অধ্যায় সারসংক্ষেপ ও গুরুত্বপূর্ণ বিষয়

মূল বিষয় 1
প্রথম অধ্যায়ে কম্পিউটার সিস্টেম ও সংগঠনের সমস্ত মৌলিক বিষয়সমূহ সবিস্তারে বর্ণিত হয়েছে। আমরা পর্যালোচনা করেছি ফন নিউম্যানের সঞ্চিত প্রোগ্রাম স্থাপত্য কীভাবে প্রসেসর (ALU, CU, রেজিস্টারসমূহ যেমন PC, MAR, MDR, IR, ACC) এবং মেমোরিকে দ্বিমুখী ডেটা বাস, একমুখী অ্যাড্রেস বাস ও কন্ট্রোল বাসের মাধ্যমে সংযুক্ত করে। আমরা দেখেছি মেমোরি স্তরবিন্যাস কীভাবে রেফারেন্সের সান্নিধ্য নীতি কাজে লাগিয়ে অতিদ্রুত ক্যাশ মেমোরি ও প্রধান র‍্যামের সমন্বয় ঘটায়। আমরা আয়ত্ত করেছি বাইনারি, অক্টাল, ডেসিমেল ও হেক্সাডেসিমেল সংখ্যা রূপান্তর, ২-এর পরিপূরক পদ্ধতি এবং ক্যারেক্টার এনকোডিং মানসমূহ। আমরা পর্যবেক্ষণ করেছি বুলিয়ান বীজগণিতের সূত্রাবলি, ডি মর্গ্যানের উপপাদ্য এবং সার্বজনীন NAND/NOR গেটের সাহায্যে সার্কিট রূপায়ণ। পরিশেষে আমরা সফটওয়্যার শ্রেণিবিন্যাস, কম্পাইলার ও ইন্টারপ্রেটারের বৈসাদৃশ্য এবং অপারেটিং সিস্টেমের প্রক্রিয়া শিডিউলিং, ভার্চুয়াল মেমোরি ও স্পুলিং কার্যপদ্ধতি পর্যালোচনা করেছি।

স্ব-মূল্যায়ন অনুশীলন (Check Your Understanding)

মূল ধারণাগত স্পষ্টতা যাচাই করার জন্য অনুশীলন প্রশ্ন। উত্তর দেখার আগে নিজে সমাধান করার চেষ্টা করো।

1
একটি মাইক্রোপ্রসেসরের ২০-বিট অ্যাড্রেস বাস থাকলে তা সরাসরি কত মেগাবাইট মেমোরি অ্যাড্রেস করতে পারে?
উত্তর ও ব্যাখ্যা দেখুন
উত্তর: ২^২০ বাইট = ১,০৪৮,৫৭৬ বাইট = ঠিক ১ মেগাবাইট (1 MB)।
2
৮-বিট ২-এর পরিপূরক পদ্ধতিতে ডেসিমেল -১ এর বাইনারি রূপ কী হবে?
উত্তর ও ব্যাখ্যা দেখুন
উত্তর: +১ = ০০০‌০০০০১_২। ১-এর পরিপূরক = ১১১‌১১১১০_২। ২-এর পরিপূরক = ১১১‌১১১১০ + ১ = ১১১‌১১১১১_২ (বা হেক্সে 0xFF)।
3
একটি ২-ইনপুট OR গেট তৈরি করতে কয়টি ২-ইনপুট NAND গেট প্রয়োজন?
উত্তর ও ব্যাখ্যা দেখুন
উত্তর: ৩টি NAND গেট প্রয়োজন। ডি মর্গ্যানের সূত্র: A + B = overline{overline{A} * overline{B}}। A ইনভার্ট করতে ১টি, B ইনভার্ট করতে ১টি এবং এদের গুণফলে ৩য় গেট।
4
সিপিইউ-এর কোন রেজিস্টার পরবর্তী নির্দেশের ঠিকানা ধারণ করে?
উত্তর ও ব্যাখ্যা দেখুন
উত্তর: প্রোগ্রাম কাউন্টার (PC)।
5
ডায়নামিক র‍্যাম (DRAM) কে বারবার বৈদ্যুতিক রিফ্রেশ করতে হয় কেন?
উত্তর ও ব্যাখ্যা দেখুন
উত্তর: কারণ DRAM-এর মেমোরি সেলগুলো আণুবীক্ষণিক ক্যাপাসিটরের চার্জ হিসেবে ডেটা রাখে, যা সময়ের সাথে সাথে প্রাকৃতিকভাবে ক্ষয়প্রাপ্ত হয়।
অধ্যায় পড়া শেষ হয়েছে?
অনুশীলন শুরু করো

অনলাইন মক টেস্ট দিয়ে প্রস্তুতি যাচাই করো

পশ্চিমবঙ্গ মধ্যশিক্ষা পর্ষদ (WBBSE) পাঠ্যক্রম অনুযায়ী বহু বিকল্পীয় প্রশ্ন (MCQ) সমাধান করো। তাৎক্ষণিক ফলাফল, সঠিক ব্যাখ্যা এবং নিজের স্কোর জেনে নাও।