বাইনারী গণিত

.

কমপ্লিমেন্ট বা পূরক এর ধারণাঃ

কোন কিছুর সংখ্যা বা পরিমান যা একটি নির্দিষ্ট পরিমান পূর্ণ করতে প্রয়োজন হয় তাকে পূরক বা কমপ্লিমেন্ট বলা হয়। অন্য কথায় পূরক বলতে পূর্ণ পরিমান হতে ঘাটতি বুঝায়। ডিজিটাল ইলেকট্রনিক্সের ভাষায় কোন একটি অংক হতে ঐ সংখ্যা পদ্ধতির ভিত্তি পূরণ করতে যে পরিমান ঘাটতি থাকে তাই উক্ত অংকের পূরক। যেমনঃ দশমিক পদ্ধতিতে 7 এর পূরক 3 কারন দশমিক সংখ্যা পদ্ধতির ভিত্তি 10 পূর্ণ করতে 7 এর নিকট এখনো (10–7)10=3 ঘাটতি রয়েছে । সুতরাং 7 এর 10’s কমপ্লিমেন্ট হলো 3 । আবার বাইনারী সংখ্যা পদ্ধতিতে 1 এর 2’s কমপ্লিমেন্ট হলো 1 কারণ বাইনারী সংখ্যা পদ্ধতির ভিত্তি 2 পূর্ণ করতে 1 এর নিকট এখনো (10–1)2=1 ঘাটতি রয়েছে। অনুরূপভাবে অকট্যাল সংখ্যা পদ্ধতিতে 6 এর 8’s কমপ্লিমেন্ট হলো 2 কারণ অকট্যাল সংখ্যা পদ্ধতির ভিত্তি 8 পূর্ণ করতে 6 এর নিকট এখনো (8–6)8=2 ঘাটতি রয়েছে ।

এ তো গেল একটি মাত্র বিট বা ডিজিটের ক্ষেত্রে পূরকের হিসাব, কিন্তু সংখ্যাটি যদি একটি মাত্র বিট বা ডিজিটে সীমিত না হয়ে কতকগুলি অংকের সমন্বয়ে গঠিত একটি বড় সংখ্যা হয় তবে তার পূরক কিভাবে নির্ণয় করা হবে? এটা একটা জটিল প্রশ্ন। গবেষকগণ এই সমস্যার সমাধান করেছেন r’s কমপ্লিমেন্ট এবং (r – 1)’s কমপ্লিমেন্ট তত্ত্বের মাধ্যমে।

পূরক এর ব্যবহারঃ

ডিজিটাল বর্তনীসমূহ এবং মাইক্রো কম্পিউটারে বিভিন্ন সংখ্যার বিয়োগ প্রকৃয়াকে সহজতর করা এবং বিভিন্ন লজিক্যাল অপারেশন সরলীকরণে পূরক পদ্ধতি ব্যবহার হয়।

প্রকারঃ

ডিজিটাল ইলেকট্রনিক্সে দুই ধরণের কমপ্লিমেন্ট বা পূরকের ব্যবহার দেখা যায়ঃ

১। r’s কমপ্লিমেন্ট এবং
২। (r – 1)’s কমপ্লিমেন্ট

এখানে r হলো সংখ্যা পদ্ধতির Radix বা ভিত্তি। যদি সংখ্যা পদ্ধতিটি বাইনারী হয় তবে তার ভিত্তি 2 এবং এই সংখ্যা পদ্ধতির পূরক দুটি হবে 2’s কমপ্লিমেন্ট এবং (2 – 1)’s বা 1’s কমপ্লিমেন্ট। যদি সংখ্যা পদ্ধতিটি অকট্যাল হয় তবে তার ভিত্তি 8 এবং এই সংখ্যা পদ্ধতির পূরক দুটি হবে 8’s কমপ্লিমেন্ট এবং (8–1)’s বা 7’s কমপ্লিমেন্ট। অনুরূপভাবে যদি সংখ্যা পদ্ধতিটি ডেসিম্যাল হয় তবে তার ভিত্তি 10 এবং এই সংখ্যা পদ্ধতির পূরক দুটি হবে 10’s কমপ্লিমেন্ট এবং (10–1)’s বা 9’s কমপ্লিমেন্ট। এভাবে সকল সংখ্যা পদ্ধতির দুটি করে পূরক পদ্ধতি থাকবে r’s কমপ্লিমেন্ট এবং (r–1)’s কমপ্লিমেন্ট।

r’s কমপ্লিমেন্ট এর ধারণাঃ

যদি একটি ধণাত্বক সংখ্যা N এর ভিত্তি r এবং সংখ্যাটিতে n টি পূর্ণ সংখ্যার ডিজিট থাকে তবে সংখ্যাটির r’s কমপ্লিমেন্ট হবে rn–N, যেখানে N 0 এবং যখন N = 0 তখন r’s কমপ্লিমেন্ট = 0 । এক্ষেত্রে অবশ্যই r >1 হতে হবে, অর্থাত সংখ্যা পদ্ধতির ভিত্তি 1 অপেক্ষা বড় হলে সূত্রটি প্রযোজ্য হবে। নিচের উদাহরণসমূহ লক্ষণীয়ঃ

উদাহরণ – ১: (23450)10 এর 10’s কমপ্লিমেন্ট নির্ণয় কর।

সমাধানঃ

এখানে, N = 23450, r = 10, n = 5

(23450)10 এর 10’s কমপ্লিমেন্ট = rn – N = 105 – 23450 = 76550

উদাহরণ – ২: (0.3267)10 এর 10’s কমপ্লিমেন্ট নির্ণয় কর।

সমাধানঃ

এখানে, N = 0.3267, r = 10, যেহেতু পূর্ণ সংখ্যা শূণ্য তাই n = 0

(0.3267)10 এর 10’s কমপ্লিমেন্ট = rn – N = 100 – 0.3267

= 1 – 0.3267 = 0.6733

উদাহরণ – ৩: (25.639)10 এর 10’s কমপ্লিমেন্ট নির্ণয় কর।

সমাধানঃ

এখানে, N = 25.639, r = 10, n = 2

(25.639)10 এর 10’s কমপ্লিমেন্ট = rn – N = 102 – 25.639

= 100 – 25.639 = 74.361

উদাহরণ – ৪: (101100)2 এর 2’s কমপ্লিমেন্ট নির্ণয় কর।

সমাধানঃ

এখানে, N = 101100, r = 2, n = 6

(101100)2 এর 2’s কমপ্লিমেন্ট = rn – N = (26)10 – (101100)2

= (1000000 – 101100)2 = 010100

উপরোক্ত উদাহরণসমূহ পর্যালোচনা করে পাওয়া যায় যে, উপরোক্ত সূত্র ব্যতিত কয়েকটি ধাপে একটি দশমিক সংখ্যার 10’s কমপ্লিমেন্ট নির্ণয় করা যায়ঃ

ধাপ – ১: দশমিক সংখ্যাটির Least সিগনিফিকেন্ট বা ডান পার্শ্বস্থ ডিজিটসমূহে শূণ্য থাকলে উক্ত শূণ্যসমূহকে অপরিবর্তিত বসাতে হবে, আর ডান দিক হতে সর্ব প্রথম শূণ্য ভিন্ন যে অংক পাওয়া যাবে উক্ত অংককে 10 হতে বিয়োগ করে বিয়োগ ফল সর্ব ডানে লিখতে হবে। উল্লেক্ষ্য যে বিয়োগ করার সময় ক্যারি উপেক্ষা করতে হবে।

ধাপ – ২: এর পরবর্তী প্রত্যেকটি ডিজিটকে 9 হতে বিয়োগ করে বিয়োগ ফল পূর্ববর্তী ফলাফলের বামে লিখতে হবে। এভাবে শেষ পর্যন্ত সম্পন্ন করতে হবে। তাহলে দশমিক সংখ্যার 10’s কমপ্লিমেন্ট নির্ণয় করা যাবে।

নিচের চিত্রটির উদাহরণ (ক) এবং (খ) লক্ষ্যণীয়ঃ

দশমিক সংখ্যার পূরক
দশমিক সংখ্যার পূরক

উপরোক্ত পদ্ধতিটিকে সূত্রের বিকল্প সহজতর পদ্ধতি বলা যেতে পারে।

একটি বাইনারী সংখ্যার 2’s কমপ্লিমেন্ট নির্ণয় করা যায় নিম্নোক্ত উপায়েঃ

ধাপ – ১: একটি বাইনারী সংখ্যার Least সিগনিফিকেন্ট বা ডান পাশের ডিজিট 0 হলে ধারাবাহিকভাবে ডান দিক হতে বাম দিকে সকল 0 এবং প্রথম যে 1 পাওয়া যাবে তাকে অপরিবর্তিত বসাতে হবে।

ধাপ – ২: বাইনারী সংখ্যাটির Least সিগনিফিকেন্ট বা সর্ব ডান পাশের ডিজিট 1 হলে শুধু উক্ত 1 কে অপরিবর্তিত বসাতে হবে।

ধাপ – ৩: এর পরবর্তী বাম পার্শ্বস্থ বিটসমূহকে উল্টিয়ে দিয়ে অর্থাত 0 এর স্থানে 1 এবং 1 এর স্থানে 0 বসিয়ে দিলেই সংখ্যাটির 2’s কমপ্লিমেন্ট পাওয়া যাবে।

নিচের চিত্রটির উদাহরণ (গ) এবং (ঘ) লক্ষণীয়ঃ

বাইনারী সংখ্যার পূরক
বাইনারী সংখ্যার পূরক

উপরোক্ত পদ্ধতিটিকে সূত্রের বিকল্প সহজতর পদ্ধতি বলা যেতে পারে।

অনুরূপভাবে একটি অকট্যাল সংখ্যার 8’s কমপ্লিমেন্ট নির্ণয় করা যায়ঃ

ধাপ – ১: অকট্যাল সংখ্যাটির Least সিগনিফিকেন্ট বা ডান পার্শ্বস্থ ডিজিটসমূহে শূণ্য থাকলে উক্ত শূণ্যসমূহকে অপরিবর্তিত বসাতে হবে, আর ডান দিক হতে সর্ব প্রথম শূণ্য ভিন্ন যে অংক পাওয়া যাবে উক্ত অংককে 8 হতে বিয়োগ করে বিয়োগ ফল সর্ব ডানে লিখতে হবে। উল্লেক্ষ্য যে বিয়োগ করার সময় ক্যারি উপেক্ষা করতে হবে।

ধাপ – ২: এর পরবর্তী প্রত্যেকটি ডিজিটকে 7 হতে বিয়োগ করে বিয়োগ ফল পূর্ববর্তী ফলাফলের বামে লিখতে হবে। এভাবে শেষ পর্যন্ত সম্পন্ন করতে হবে। তাহলে অকট্যাল সংখ্যার 8’s কমপ্লিমেন্ট নির্ণয় করা যাবে।

নিচের চিত্রটির উদাহরণ (ঙ) এবং (চ) লক্ষণীয়ঃ

অকট্যাল সংখ্যার পূরক
অকট্যাল সংখ্যার পূরক

উপরোক্ত আলোচনা হতে বুঝা যায় যে, r’s কমপ্লিমেন্ট একটি সাধারণ টার্ম যার সাহায্যে যে কোন ভিত্তি বিশিষ্ট সংখ্যাকে তার r’s কমপ্লিমেন্টে রূপান্তর করা সম্ভব এবং rn – N সূত্রের সাহায্যে রূপান্তরিত কমপ্লিমেন্টের নাম হবে ভিত্তি সংখ্যার সমান অর্থাত দশমিক সংখ্যার জন্য 10’s কমপ্লিমেন্ট, বাইনারী সংখ্যার জন্য 2’s কমপ্লিমেন্ট আর কোন সংখ্যার ভিত্তি 13 হলে তার জ্ন্য 13’s কমপ্লিমেন্ট।

(r 1)’s কমপ্লিমেন্ট এর ধারণাঃ

যদি একটি ধণাত্বক সংখ্যা N এর ভিত্তি r এবং সংখ্যাটিতে n সংখ্যক পূর্ণ সংখ্যার ডিজিট এবং m সংখ্যক ভগ্নাংশ সংখ্যার ডিজিট থাকে তবে সংখ্যাটির (r–1)’s কমপ্লিমেন্ট হবে rnr–m–N, যেখানে N 0 । এক্ষেত্রে অবশ্যই r >1 হতে হবে, অর্থাত সংখ্যা পদ্ধতির ভিত্তি 1 অপেক্ষা বড় হলে সূত্রটি প্রযোজ্য হবে। নিচের উদাহরণসমূহ লক্ষণীয়ঃ

উদাহরণ – ১: (23450)10 এর (r – 1)’s বা 9’s কমপ্লিমেন্ট নির্ণয় কর।

সমাধানঃ

এখানে, N = 23450, r = 10, n = 5, যেহেতু ভগ্নাংশ ডিজিট শূণ্য তাই m = 0

(23450)10 এর 9’s কমপ্লিমেন্ট =rnr–m–N =105–100–23450=76549

উদাহরণ – ২: (0.3245)10 এর 9’s কমপ্লিমেন্ট নির্ণয় কর।

সমাধানঃ

এখানে, N = 0.3245, r = 10, যেহেতু পূর্ণ সংখ্যা শূণ্য তাই n = 0, m = 4

(0.3245)10 এর 9’s কমপ্লিমেন্ট = rnr–m–N = 100 – 10–4 – 0.3245

= 1 – 0.0001 – 0.3245 = 0.6754

উদাহরণ – ৩: (25.639)10 এর 9’s কমপ্লিমেন্ট নির্ণয় কর।

সমাধানঃ

এখানে, N = 25.639, r = 10, n = 2, m = 3

(25.639)10 এর 9’s কমপ্লিমেন্ট = rnr–m–N = 102 – 10–3 – 25.639

= 100 – 0.001 – 25.639 = 74.360

উদাহরণ – ৪: (101100)2 এর 1’s কমপ্লিমেন্ট নির্ণয় কর।

সমাধানঃ

এখানে, N = 101100, r = 2, n = 6, m = 0

(101100)2 এর 1’s কমপ্লিমেন্ট = rnr–m–N = (26–2–0)10 – (101100)2

= (111111 – 101100)2 = 010011

উপরোক্ত উদাহরণসমূহ পর্যালোচনা করে পাওয়া যায় যে, উপরোক্ত সূত্র ব্যতিত নিম্নোক্ত প্রকৃয়ায় একটি দশমিক সংখ্যার 9’s কমপ্লিমেন্ট নির্ণয় করা যায়ঃ

ধাপ – ১: দশমিক সংখ্যাটির প্রতিটি ডিজিটকে 9 হতে বিয়োগ করে প্রাপ্ত বিয়োগফল হতে দশমিক সংখ্যার 9’s কমপ্লিমেন্ট নির্ণয় করা যাবে।

নিচের চিত্রটির উদাহরণ (ছ) এবং (জ) লক্ষণীয়ঃ

দশমিক সংখ্যার ৯ এর পূরক
দশমিক সংখ্যার ৯ এর পূরক

উপরোক্ত পদ্ধতিটিকে সূত্রের বিকল্প সহজতর পদ্ধতি বলা যেতে পারে।

একটি বাইনারী সংখ্যার 1’s কমপ্লিমেন্ট নির্ণয় করা যায় নিম্নোক্ত উপায়েঃ

ধাপ – ১: একটি বাইনারী সংখ্যার প্রতিটি বিটকে উল্টিয়ে দিলেই উক্ত সংখ্যাটির 1’s কমপ্লিমেন্ট পাওয়া যাবে। অর্থাত বাইনারী সংখ্যাটির প্রতিটি 1 কে 0 তে এবং প্রতিটি 0 কে 1 এ রূপান্তর করে সংখ্যাটির 1’s কমপ্লিমেন্ট পাওয়া যাবে। যেমনঃ (101100)2 এর 1’s কমপ্লিমেন্ট 010011

উপরোক্ত সূত্র, সজ্ঞা এবং উদাহরণসমূহ পর্যালোচনা করে আরো বুঝা যায় যে, (r–1)’s কমপ্লিমেন্ট এর সাথে r–m যোগ করে সংখ্যাটির r’s কমপ্লিমেন্ট নির্ণয় করা যায়।

উদাহরণসরূপঃ (101100)2 বাইনারী সংখ্যার 1’s কমপ্লিমেন্ট 010011 এর সাথে r–m=(2–0)10=(1)10=(1)2 যোগ করলেই 2’s কমপ্লিমেন্ট নির্ণয় করা যাবে। যেমনঃ 010011 + 000001 = 010100, অতএব, (101100)2 এর 2’s কমপ্লিমেন্ট 010100

উপরোক্ত পদ্ধতিটিকে সূত্রের বিকল্প সহজতর পদ্ধতি বলা যেতে পারে।

অনুরূপভাবে একটি অকট্যাল সংখ্যার 7’s কমপ্লিমেন্ট নির্ণয় করা যায়ঃ

ধাপ – ১: অকট্যাল সংখ্যাটির প্রতিটি ডিজিটকে 7 হতে বিয়োগ করে প্রাপ্ত বিয়োগফল হতে অকট্যাল সংখ্যার 7’s কমপ্লিমেন্ট নির্ণয় করা যাবে।

নিচের চিত্রটির উদাহরণ (ঝ) এবং (ঞ) লক্ষণীয়ঃ

অকট্যাল সংখ্যার ৭ এর পূরক
অকট্যাল সংখ্যার ৭ এর পূরক

উপরোক্ত আলোচনা হতে বুঝা যায় যে, (r–1)’s কমপ্লিমেন্ট একটি সাধারণ টার্ম যার সাহায্যে যে কোন ভিত্তি বিশিষ্ট সংখ্যাকে তার (r–1)’s কমপ্লিমেন্ট রূপান্তর করা সম্ভব এবং rnr–m–N সূত্রের সাহায্যে রূপান্তরিত কমপ্লিমেন্টের নাম হবে ভিত্তি সংখ্যা হতে 1 কম। অর্থাত দশমিক সংখ্যার জন্য 9’s কমপ্লিমেন্ট, বাইনারী সংখ্যার জন্য 1’s কমপ্লিমেন্ট আর কোন সংখ্যার ভিত্তি 13 হলে তার জ্ন্য 12’s কমপ্লিমেন্ট।

উপরোক্ত আলোচনা হতে আরো বুঝা যায় যে, একটি সংখ্যার r’s কমপ্লিমেন্টকে পুনঃরায় r’s কমপ্লিমেন্ট এ রূপান্তর করলে মূল সংখ্যাটি ফিরে আসে। যেমনঃ N এর r’s কমপ্লিমেন্ট rn–N কে পুনঃরায় r’s কমপ্লিমেন্ট করলে পাই rn–(rn–N)=N

বাইনারী সংখ্যার জন্য কমপ্লিমেন্ট নির্ণয়ের সহজমত পদ্ধতিঃ

একটি বাইনারী সংখ্যার 1’s এবং 2’s কমপ্লিমেন্ট নির্ণয় করা যায় নিম্নোক্ত উপায়েঃ

ধাপ – ১: একটি বাইনারী সংখ্যার প্রতিটি বিটকে উল্টিয়ে দিলেই উক্ত সংখ্যাটির 1’s কমপ্লিমেন্ট পাওয়া যাবে। অর্থাত বাইনারী সংখ্যাটির প্রতিটি 1 কে 0 তে এবং প্রতিটি 0 কে 1 এ রূপান্তর করে সংখ্যাটির 1’s কমপ্লিমেন্ট পাওয়া যাবে। যেমনঃ (101100)2 এর 1’s কমপ্লিমেন্ট 010011

ধাপ – ২: প্রাপ্ত 1’s কমপ্লিমেন্ট সংখ্যার LSB বা Least Significant Bit এর সাথে একটি বাইনারী বিট 1 যোগ করলে উক্ত সংখ্যাটির 2’s কমপ্লিমেন্ট পাওয়া যায়। যেমনঃ 010011 + 000001 = 010100, অতএব, (101100)2 এর 2’s কমপ্লিমেন্ট 010100

বাইনারী যোগঃ

আমরা কম্পিউটারে কোন যোগ নির্দেশ দিলে তার ফলাফল দশমিক সংখ্যায় দেখতে পাই কিন্তু কম্পিউটার কাজটি করে বাইনারী যোগের মাধ্যমে। ডিজিটাল সিস্টেমের সকল যোগ, বিয়োগ, গুণ, ভাগ ইত্যাদি বাইনারী পদ্ধতির যোগ, বিয়োগ, গুণ, ভাগ ইত্যাদির মাধ্যমে হয়ে থাকে। বাইনারী সংখ্যার যোগফল নির্ণয়ের প্রকৃয়া দশমিক সংখ্যার যোগ প্রকৃয়ার মত। নিচে বাইনারী যোগের পদ্ধতি দেখানো হলোঃ

এক বিটের যোগঃ 0+0=0, 1+0=1, 0+1=1, 1+1=10 এখানে যোগফল 0 এবং ক্যারি 1। নিচের চিত্রটি লক্ষ্যণীয়ঃ

এক বিট বাইনারী যোগ
এক বিট বাইনারী যোগ

আরো সুস্পষ্ট ধারণার জন্য নিচের সারণীটি লক্ষ্যনীয়ঃ

Augend

Addend

Carry

Sum

Result

0

0

0

0

0

0

1

0

1

1

1

0

0

1

1

1

1

1

0

10

একাধিক বিট বিশিষ্ট বাইনারী সংখ্যার যোগঃ উপরোক্ত চিত্রটি এক বিট বাইনারী যোগের উদাহরণ। কিন্তু একাধিক বিট সমন্বয়ে গঠিত বাইনারী সংখ্যার যোগফল নির্ণয়ের প্রকৃয়া নিচে দেখানো হলো। বাইনারী সংখ্যার যোগফল নির্ণয়ের প্রকৃয়া দশমিক সংখ্যার যোগ প্রকৃয়ার মত। যেমনঃ সর্ব ডানের কলাম হতে যোগ শুরু হয়, যোগফল উক্ত কলাম বরাবর নিচে লিখতে হয়। হাতে ক্যারি থাকলে তা পরবর্তি বাম পার্শ্বস্থ কলামের সাথে যোগ করে যোগফল উক্ত কলামের নিচে লিখতে হয়। এভাবে বাম দিকের শেষ বিট পর্যন্ত যোগ প্রকৃয়া চলতে থাকে। নিচের উদাহরণটি লক্ষ্যণীয়। বাইনারী সংখ্যা 1010 এবং 1101 যোগ করঃ

বাইনারী সংখ্যার যোগ
বাইনারী সংখ্যার যোগ

বাইনারী বিয়োগঃ

ডিজিটাল সিস্টেমের সকল বিয়োগ বাইনারী সংখ্যার বিয়োগ প্রকৃয়ার মাধ্যমে হয়ে থাকে। প্রকৃত পক্ষে বাইনারী সংখ্যার বিয়োগ প্রকৃয়া তিনটি পদ্ধতিতে হয়ে থাকেঃ ১। সরাসরি পদ্ধতি, ২। r’s কমপ্লিমেন্ট পদ্ধতি এবং ৩। (r – 1)’s কমপ্লিমেন্ট পদ্ধতি

নিচে সরাসরি বাইনারী বিয়োগের পদ্ধতি দেখানো হলোঃ

এক বিট বিয়োগঃ

0–0=0, 1–0=1, 0–1=(Difference=1 and Borrow=1), 1–1=0 এখানে যোগফল 0 এবং ক্যারি 1। নিচের চিত্রটি লক্ষ্যণীয়ঃ

এক বিট বাইনারী বিয়োগ
এক বিট বাইনারী বিয়োগ

আরো সুস্পষ্ট ধারণার জন্য নিচের সারণীটি লক্ষ্যনীয়ঃ

Minuend

Subtrahend

Difference

Borrow

0

0

0

0

0

1

1

1

1

0

1

0

1

1

0

0

একাধিক বিট বাইনারী সংখ্যার বিয়োগ
একাধিক বিট বাইনারী সংখ্যার বিয়োগ

একাধিক বিট বিশিষ্ট বাইনারী সংখ্যার বিয়োগঃ উপরোক্ত চিত্রটি এক বিট বাইনারী বিয়োগের উদাহরণ। কিন্তু একাধিক বিট সমন্বয়ে গঠিত বাইনারী সংখ্যার বিয়োগফল নির্ণয়ের প্রকৃয়া নিচে দেখানো হলো। বাইনারী সংখ্যার বিয়োগফল নির্ণয়ের সরাসরি পদ্ধতিটি দশমিক সংখ্যার বিয়োগ প্রকৃয়ার মত, যেখানে ঋণ (Borrow) এর ধারণা ব্যবহৃত হয়। সর্ব ডানের কলাম হতে বিয়োগ শুরু হয়, বিয়োগফল উক্ত কলাম বরাবর নিচে লিখতে হয়। যখন কোন কলামের Subtrahend ডিজিট হতে Minuend ডিজিট ছোট হয় তখন পরবর্তি Higher Significant Minuend ডিজিট হতে একটি 1 ধার করতে হয় এবং বিয়োগের সময় উক্ত Higher Significant Minuend ডিজিট কে 1 ছোট ধরতে হয়। এভাবে বাম দিকের শেষ বিট পর্যন্ত বিয়োগ প্রকৃয়া চলতে থাকে। পাশের উদাহরণ (ট) লক্ষ্যণীয় যাতে বাইনারী সংখ্যা 1101 হতে 1010 বিয়োগ করা হয়েছে।

একাধিক বিট বাইনারী বিয়োগ
একাধিক বিট বাইনারী বিয়োগ

আরো একটি উদাহরণ (ঠ) লক্ষ্যণীয় যাতে বাইনারী সংখ্যা 1000 হতে 1001 বিয়োগ করা হয়েছে। এখানে Minuend সংখ্যাটি Subtrahend সংখ্যা হতে ছোট তাই বিয়োগ শেষে একটি End Borrow থাকবে এবং বিয়োগফল ঋণাত্বক হবে। এই বিয়োগফল প্রকৃত বিয়োগফল নয় এর End Borrow কে বাদ দিয়ে প্রাপ্ত সংখ্যাটির 2’s কমপ্লিমেন্ট নির্ণয় করলে যে ফল পাওয়া যাবে তাই প্রকৃত বিয়োগফল এবং তা হবে ঋণাত্বক সংখ্যা। সুতরাং 1111 এর 2’s কমপ্লিমেন্ট = 0001এবং প্রকৃত বিয়োগফল = – 1

(r – 1)’s কমপ্লিমেন্ট বা 1’s কমপ্লিমেন্ট পদ্ধতিতে বিয়োগঃ

এ পদ্ধতির বিয়োগ প্রকৃয়া কয়েকটি ধাপে সম্পন্ন হয় তা নিম্নরূপঃ

১। Subtrahend সংখ্যার 1’s কমপ্লিমেন্ট নির্ণয় করতে হবে।
২। প্রাপ্ত 1’s কমপ্লিমেন্ট সংখ্যাটি Minuend এর সাথে যোগ করতে হবে।
৩। যোগফলে ক্যারি 1 হলে ক্যারিকে বাদ দিয়ে প্রাপ্ত সংখ্যাটির সাথে 1 যোগ করে যোগফলটি প্রকৃত বিয়োগফল হিসাবে বিবেচিত হবে।
৪। যদি যোগফলে ক্যারি না থাকে তাহলে পূনঃরায় যোগফলের 1’s কমপ্লিমেন্ট নির্ণয় করতে হবে এবং সংখ্যাটির বামে একটি ঋণাত্বক চিহ্ন দিতে হবে।

নিচের উদাহরণ (ড) এবং (ঢ) লক্ষ্যণীয়ঃ

1’s কমপ্লিমেন্ট পদ্ধতিতে বাইনারী বিয়োগ
1’s কমপ্লিমেন্ট পদ্ধতিতে বাইনারী বিয়োগ

r’s কমপ্লিমেন্ট বা 2’s কমপ্লিমেন্ট পদ্ধতিতে বিয়োগঃ

এ পদ্ধতির বিয়োগ প্রকৃয়া কয়েকটি ধাপে সম্পন্ন হয় তা নিম্নরূপঃ

১। Subtrahend সংখ্যার 2’s কমপ্লিমেন্ট নির্ণয় করতে হবে।
২। প্রাপ্ত 2’s কমপ্লিমেন্ট সংখ্যাটি Minuend এর সাথে যোগ করতে হবে।
৩। যোগফলে ক্যারি 1 হলে ক্যারিকে বাদ দিয়ে প্রাপ্ত সংখ্যাটি প্রকৃত বিয়োগফল হিসাবে বিবেচিত হবে।
৪। যদি যোগফলে ক্যারি না থাকে তাহলে পূনঃরায় যোগফলের 2’s কমপ্লিমেন্ট নির্ণয় করতে হবে এবং সংখ্যাটির বামে একটি ঋণাত্বক চিহ্ন দিতে হবে।

নিচের উদাহরণ (ণ) এবং (ন) লক্ষ্যণীয়ঃ

2’s কমপ্লিমেন্ট পদ্ধতিতে বিয়োগ
2’s কমপ্লিমেন্ট পদ্ধতিতে বিয়োগ

BCD যোগঃ

BCD যোগফল নির্ণয় করতে নিচের ধাপগুলি সম্পন্ন করতে হবেঃ

১। প্রথমে বিসিডি সংখ্যা দুটির সাধারণ যোগ সম্পন্ন করতে হবে।
২। যদি যোগফল ≤ 9 হয় তবে ইহা সঠিক BCD নাম্বার হিসাবে বিবেচিত হবে।
৩। যদি যোগফল > 9 হয় অথবা যোগফলে একটি ক্যারি 1 সৃষ্টি হয় তবে ইহা সঠিক BCD নাম্বার হিসাবে বিবেচিত হবে না। এক্ষেত্রে যোগফলের সাথে 6 বা বাইনারী 0110 যোগ করতে হবে।
৪। প্রাপ্ত যোগফলের ডান দিক হতে 4টি করে বিট নিয়ে গ্রুপ তৈরী করতে হবে। বাম পার্শ্বের গ্রুপে বা Most Significant গ্রুপে 4বিট পূর্ণ না হলে এর বাম পার্শ্বে প্রয়োজনীয় সংখ্যক 0 যোগ করা যেতে পারে। এবার প্রতিটি গ্রুপ সঠিক BCD কোড হিসেবে বিবেচিত হবে। এবং প্রতিটি গ্রপের সমতূল্য দশমিক অংক প্রতিস্থাপন করলে যোগফল পাওয়া যাবে।

নিচের উদাহরণ (ত), (থ), (দ), (ধ) লক্ষ্যণীয়ঃ

BCD যোগফল নির্ণয়
BCD যোগফল নির্ণয়

BCD বিয়োগঃ

BCD বিয়োগফল নির্ণয় করতে নিচের ধাপগুলি সম্পন্ন করতে হবেঃ

১। প্রথমে বিসিডি সংখ্যা দুটির সাধারণ বিয়োগ সম্পন্ন করতে হবে।
২। যদি যোগফল ≤ 9 হয় তবে ইহা সঠিক BCD নাম্বার হিসাবে বিবেচিত হবে।
৩। যদি যোগফল > 9 হয় অথবা যোগফলে একটি ক্যারি 1 সৃষ্টি হয় তবে ইহা সঠিক BCD নাম্বার হিসাবে বিবেচিত হবে না। এক্ষেত্রে যোগফলের সাথে 6 বা বাইনারী 0110 যোগ করতে হবে।
৪। প্রাপ্ত যোগফলের ডান দিক হতে 4টি করে বিট নিয়ে গ্রুপ তৈরী করতে হবে। বাম পার্শ্বের গ্রুপে বা Most Significant গ্রুপে 4বিট পূর্ণ না হলে এর বাম পার্শ্বে প্রয়োজনীয় সংখ্যক 0 যোগ করা যেতে পারে। এবার প্রতিটি গ্রুপ সঠিক BCD কোড হিসেবে বিবেচিত হবে। এবং প্রতিটি গ্রপের সমতূল্য দশমিক অংক প্রতিস্থাপন করলে বিয়োগফল পাওয়া যাবে।

নিচের উদাহরণ (প), (ফ) লক্ষ্যণীয়ঃ

BCD বিয়োগফল নির্ণয়
BCD বিয়োগফল নির্ণয়

সূত্রঃ

[1] Digital Principles and Logic Design – A. SAHA & N. MANNA
[2] Digital Logic and Computer Design – M. Morris Mano


Share this post

Post Comment