কম্পিউটারের ভাষাঃ বাইনারি সংখ্যা


আজকের গল্পটা শুরু করব বিখ্যাত গণিতবিদ গটফ্রেট লিবনিজের একটা ফিলোসোফি দিয়ে। তিনি সবসময় ভাবতেন একক বা 1সংখ্যাটি স্রষ্টাকে প্রতিনিধিত্ব করে। 0 প্রতিনিধিত্ব করে কোনো কিছুর অনুপস্থিতি অর্থাৎ শূন্যতা। আর মহাবিশ্ব তো স্রষ্টার সব সৃষ্টি আর শূন্যতা নিয়েই গঠিত। তার মানে নিশ্চয়ই 1 0 দ্বারা সবকিছুকে প্রকাশ করা সম্ভব। আর সংখ্যা পদ্ধতিও তার বাইরে নয়।


যা ভাবা তাই কাজ। লিবনিজ তখন চেষ্টা করলেন সকল সংখ্যাকে 1, 0 দিয়ে প্রকাশ করার। এখানে বলে রাখা ভাল যে, লিবনিজ কিন্তু প্রথম ব্যক্তি নন যিনি এই চেষ্টা করেন। এর আগে থমাস হ্যারিয়ট, ফ্রান্সিস বেকন ও ভারতের পিঙ্গলের মত গনিতবিদেরা এটা নিয়ে ভাবেন। মূলত তাঁদের কাছ থেকেই অনুপ্রাণিত হন লিবনিজ।


অবশেষে ১৬৭৯ সালে তিনি সফল হন। যেহেতু মাত্র দুটি ডিজিট ব্যবহার করা হয় এই সংখ্যা পদ্ধতিতে, তাই এর নাম দেয়া হয় Binary Number System (Bi অর্থ দুই)। এবার জেনে নেয়া যাক এই পদ্ধতিটি কিভাবে এলো।


যেকোনো সংখ্যাকে 2 এর বিভিন্ন ঘাতের যোগফল হিসেবে প্রকাশ করা যায়। যেমন ধরা যাক 23 সংখ্যাটির কথা। 23= 16+4+2+1=24 +22+21+20 । আমরা যেকোনো সংখ্যা নিয়ে এটা পরীক্ষা করে দেখতে পারি।


কি একটু হিজিবিজি লাগছে? এসো এবার আমরা এটাকে খেলার ছলে শেখার চেষ্টা করি। ধরে নাও তোমার কাছে অনেক গুলো কাপ আছে। প্রথমে একটি কাপ নিয়ে এর গায়ে লিখলে 20 বা 1, এরপর কাপটিকে হাতের একদম ডানদিকে রেখে দাও। এবার আরও একটি কাপ নিয়ে এর গায়ে লিখো 21 বা 2, নতুন কাপটিকে আগের কাপের বামে রেখে দাও। এভাবে ক্রমান্বয়ে 2 এর ঘাত বৃদ্ধি করে, তার মান কাপের ওপর লিখে একই ভাবে রেখে দাও নিচের ছবির মত করে।



আমরা তো 23 সংখ্যাটি নিয়ে কাজ করছিলাম। এবার আমরা সেইসব কাপের ওপর একটা করে বল রাখব যাদের যোগ করলে আমরা 23 পাবো। এখানে শুধুমাত্র 16,4,2,1 এই কাপগুলোর ওপর বল রাখব আমরা। একটু চেষ্টা করলেই বুঝতে পারব অন্যকোনো  বল রেখে 23 পাওয়া সম্ভব না। সুতরাং, আমরা 'কাপ-বল' পদ্ধতিতে একটি সংখ্যাকে ইউনিকভাবে প্রকাশ করতে পারলাম। অভিনন্দন! আমরা বাইনারি সংখ্যা পদ্ধতি কিভাবে কাজ করে তা শিখে ফেলেছি। এবার আমরা শিখব কিভাবে একে লিখে প্রকাশ করতে হয়।



বাইনারি সংখ্যা লেখা বেশ সহজ। যে কাপের ওপর বল আছে সেইখানে 1আর ফাঁকা কাপের জায়গায় লিখব 0। এক্ষেত্রে সবচেয়ে বামে যে 1 আছে, তার বামের 0 গুলো লেখার প্রয়োজন নেই। অর্থাৎ 000000010111 আর 10111 একই


সংখ্যাকে নির্দেশ করে।




512

(29)

256

(28)

128

(27)

64

(26)

32

(25)

16

(24)

8

(23)

4

(22)

2

(21)

1

(20)

0

0

0

0

0

1

0

1

1

1


23 কে বাইনারিতে প্রকাশ করে পেলাম 10111



তাহলে আমরা যেকোনো পূর্ণসংখ্যাকে বাইনারিতে রূপান্তর করতে শিখে ফেললাম। ভগ্নাংশের রূপান্তরটা আমরা আরেকদিন শিখব।


মিশরীয়রা কিন্তু লিবনিজের বহু আগেই বাইনারি ব্যবহার করে দুটো সংখ্যাকে গুণ করত। কিন্তু মজার ব্যাপার হলো, তারা জানতোই না যে তারা বাইনারি পদ্ধতি ব্যবহার করছে। তারা শুধু জানতো এটা কাজ করে কিন্তু কিভাবে করে সেটা জানত না!


এখন তোমাদের মনে প্রশ্ন আসতে পারে, “আচ্ছা, এই বাইনারি পদ্ধতির বিশেষত্বটা কি?”


এর বিশেষত্ব হচ্ছে, যত বড়ই সংখ্যা হোক না কেন আমাদের শুধু দেখতে হবে কাপে বল আছে কিনা। অর্থাৎ1 নাকি 0 । এই দুটো ডিজিট ব্যবহার করেই সব প্রকাশ করা যায় অথচ প্রচলিত দশমিক পদ্ধতিতে ডিজিট প্রয়োজন দশটি!





1,0 র লজিক খুবই সাধারণ। কাপে বল আছে অথবা নেই। হ্যাঁ অথবা না। on অথবা off। কি মনে হচ্ছে না মেশিনের মত! মূলত এই সহজ লজিকের জন্যই বাইনারি পদ্ধতিকে সকল ডিজিটাল মেশিনে ব্যবহার করা হয়। তোমার কম্পিউটার, ক্যালকুলেটর, টিভির রিমোট, স্মার্টফোন সবখানেই রয়েছে অসংখ্য সার্কিট।আর প্রতিটা সার্কিটের লজিক বলতে শুধু on আরoff বা বাইনারি। খেয়াল করলে দেখবে, রিমোট কিংবা টেবিল ল্যাম্পের পাওয়ার বাটনের প্রতীকটি কিন্তু 1, 0 থেকে এসেছে।


কম্পিউটার বিশাল বিশাল সব গণনা করে এই বাইনারি সংখ্যার মাধ্যমে। এখন তোমাদের চিন্তা করার জন্য একটি প্রশ্ন রেখে যাচ্ছি, যেকোনো সংখ্যাকে তো বাইনারিতে প্রকাশ বা গণনা করা যায় কিন্তু বিভিন্ন বর্ণ বা ছবিকে কিভাবে বাইনারিতে রূপান্তর করে কম্পিউটার ?



তথ্য উৎস্য:

দি রয়েল সায়েন্টিফিক পাবলিকেশন্স কর্তৃক প্রকাশিত

BCS Concise ‍Book - Computer & Information Technology


বইটির কিছু অংশ পড়ে দেখতে ক্লিক করুন  BCS Concise ‍Book - Computer & Information Technology

লেখাঃ S. M. FIRDOUS SIDDIQUEE
BUET’19; WRE