বাইনারি, দশমিক ও হেক্সাডেসিমাল: এক থেকে অন্যটিতে কীভাবে যাবেন

বেস রূপান্তর জাদুর মতো লাগে, যতক্ষণ না বোঝা যায় ধারণাটা সবসময় একই: প্রতিটি অঙ্কের মান নির্ভর করে সে কোন ঘরে আছে তার উপর। এখানে শিখবেন হাতে বাইনারি থেকে দশমিক ও দশমিক থেকে বাইনারিতে যেতে, ভয় ছাড়া হেক্সাডেসিমাল পড়তে এবং টেক্সটকে বিটে বদলাতে। থাকছে সমাধান করা হিসাব ও কাছে রাখার জন্য 0 থেকে 15-এর একটি ছক।

হালনাগাদ:

স্থানীয়মান পদ্ধতি কী

দশমিক সংখ্যা 4,095-এ 4-এর মান 4 নয়: এটি 4,000, কারণ এটি হাজারের ঘরে আছে। প্রতিটি অবস্থান অঙ্কটিকে 10-এর একটি ঘাত (1, 10, 100, 1,000…) দিয়ে গুণ করে। এটিই স্থানীয়মান পদ্ধতি, আর বেস হলো কতগুলো আলাদা অঙ্ক ব্যবহার করা হয় তার সংখ্যা: দশমিকে দশটি।

বাইনারি একইভাবে কাজ করে, কিন্তু বেস 2: শুধু 0 ও 1 আছে, আর প্রতিটি ঘরের মান আগেরটির দ্বিগুণ। হেক্সাডেসিমাল বেস 16 ব্যবহার করে: ষোলোটি অঙ্ক হলো 0 থেকে 9 এবং A থেকে F অক্ষর, আর প্রতিটি ঘরের মান আগেরটির 16 গুণ। কম্পিউটার বাইনারিতে কাজ করে কারণ একটি সার্কিটকে শুধু দুটি অবস্থা (বন্ধ ও চালু) আলাদা করতে হয়, আর হেক্সাডেসিমাল হলো সেই বিটগুলো সংক্ষেপে লেখার একটি উপায়।

প্রতিটি ঘরের মান কত। 128 পর্যন্ত 2-এর ঘাতগুলো মুখস্থ থাকলে প্রায় সব হিসাব সহজ হয়ে যায়।
অবস্থান (ডান থেকে বামে)বাইনারিতে মানহেক্সাডেসিমালে মান
1ম11
2য়216
3য়4256
4র্থ84,096
5ম1665,536
6ষ্ঠ321,048,576
7ম6416,777,216
8ম128268,435,456

বাইনারি থেকে দশমিক, হাতে

প্রতিটি অঙ্কের নিচে তার ঘরের মান লিখুন এবং শুধু যেসব ঘরে 1 আছে সেগুলো যোগ করুন। 1101 দিয়ে উদাহরণ: ডান থেকে বামে ঘরগুলোর মান 1, 2, 4 ও 8।

  1. সংখ্যাটি লিখুন এবং নিচে প্রতিটি অবস্থানের মান লিখুন: 1 1 0 1-এর নিচে 8 4 2 1।
  2. দেখুন প্রতিটি ঘরে কী আছে: 8-এর ঘরে 1, 4-এর ঘরে 1, 2-এর ঘরে 0 এবং 1-এর ঘরে 1।
  3. যেসব ঘরে 0 আছে সেগুলো বাদ দিন (এখানে 2-এর ঘরটি)।
  4. যোগ করুন: 8 + 4 + 0 + 1 = 13। অতএব বাইনারি 1101 হলো দশমিক 13।

বেশি অঙ্ক হলেও একই কাজ: 11111111 হলো 128 + 64 + 32 + 16 + 8 + 4 + 2 + 1 = 255, যা 8 বিটে ধরে এমন সর্বোচ্চ মান। আর 10110110 হলো 128 + 32 + 16 + 4 + 2 = 182।

দশমিক থেকে বাইনারি, বারবার ভাগ করে

সংখ্যাটিকে বারবার 2 দিয়ে ভাগ করুন এবং প্রতিটি ভাগের ভাগশেষ (সবসময় 0 বা 1) লিখে রাখুন, যতক্ষণ না ভাগফল 0 হয়। ভাগশেষগুলো নিচ থেকে উপরে পড়লে বাইনারি সংখ্যা পাওয়া যায়। 45 দিয়ে উদাহরণ:

ভাগশেষগুলো নিচ থেকে উপরে পড়লে পাওয়া যায় 101101। যাচাই করতে যোগ করুন: 32 + 8 + 4 + 1 = 45।

আরেকটি পদ্ধতি আছে যা অনেকে বেশি পছন্দ করেন: বড় থেকে ছোট ক্রমে 2-এর ঘাত বিয়োগ করা। 200-এর জন্য: 128 ঢোকে (বাকি 72), 64 ঢোকে (বাকি 8), 32 ও 16 ঢোকে না, কিন্তু 8 ঢোকে (বাকি 0)। ব্যবহৃত ঘরগুলো 128, 64 ও 8, তাই 200 = 11001000।

হেক্সাডেসিমাল: ষোলোটি অঙ্ক আর হাতের কাছে রাখার একটি ছক

10 থেকে 15-এর জন্য কোনো অঙ্ক নেই বলে A, B, C, D, E ও F অক্ষর ব্যবহার হয়। একটি হেক্সাডেসিমাল অঙ্ক ঠিক চার বিটের (একটি «নিবল») সমান, আর সেজন্যই এটি এত সুবিধাজনক: 8 বিটের একটি বাইট মাত্র দুটি হেক্সাডেসিমাল অঙ্কে লেখা যায়।

হেক্সাডেসিমাল থেকে দশমিকে যেতে প্রতিটি অঙ্ককে তার ঘরের 16-এর ঘাত দিয়ে গুণ করে যোগ করুন। যেমন 3F = 3 × 16 + 15 = 63 এবং A3 = 10 × 16 + 3 = 163।

টুলটি যে চারটি বেস দেখায় সেগুলোতে 0 থেকে 15।
দশমিকবাইনারি (4 বিট)অক্টালহেক্সাডেসিমাল
0000000
1000111
2001022
3001133
4010044
5010155
6011066
7011177
81000108
91001119
10101012A
11101113B
12110014C
13110115D
14111016E
15111117F

হেক্সাডেসিমাল কেন ব্যবহার হয়: বাইট, রং ও ঠিকানা

একটি বাইট হলো 8 বিট এবং এর পরিসর 0 থেকে 255 (00000000 থেকে 11111111)। হাতে বিট লেখা ধীর ও ভুলের সম্ভাবনায় ভরা; হেক্সাডেসিমালে একই বাইট মাত্র দুটি অক্ষর, 00 থেকে FF। বাইনারি থেকে হেক্সাডেসিমালে যেতে বিটগুলোকে ডান থেকে চারটি করে ভাগ করুন এবং প্রতিটি ভাগকে ছক থেকে তার অঙ্ক দিয়ে বদলান। উদাহরণ: 11010111 ভাগ হয় 1101 ও 0111-এ, যা D ও 7, তাই এর মান D7। দশমিকে এটি 13 × 16 + 7 = 215।

সবচেয়ে পরিচিত ক্ষেত্র হলো ওয়েবের রং। #FF8800-এ তিনটি বাইট আছে: লালের জন্য FF (255), সবুজের জন্য 88 (136) এবং নীলের জন্য 00 (0)। এটি একটি গাঢ় কমলা: পুরো লাল, অর্ধেকের বেশি সবুজ ও নীল একদমই নেই। হেক্সাডেসিমাল মেমরির ঠিকানা, ত্রুটির কোড ও নেটওয়ার্কের শনাক্তকারীতেও দেখা যায়।

ASCII দিয়ে টেক্সট থেকে বাইনারি

কম্পিউটার প্রতিটি অক্ষরকে একটি সংখ্যা হিসেবে এবং সেই সংখ্যাকে বিট হিসেবে সংরক্ষণ করে। ASCII ছকে A হলো 65, যা 8 বিটের বাইনারিতে 01000001। «Hi» শব্দটিতে দুটি অক্ষর: H হলো 72 (01001000) আর i হলো 105 (01101001), তাই এটি লেখা হয় 01001000 01101001। «Hola»-তে আছে 72, 111, 108 ও 97, অর্থাৎ 01001000 01101111 01101100 01100001, আর হেক্সাডেসিমালে 48 6F 6C 61।

টুলটি UTF-8 এনকোডিং ব্যবহার করে: ইংরেজির মূল অক্ষরগুলোর জন্য প্রতিটি অক্ষর 8 বিটের এক বাইট নেয়, কিন্তু ñ, উচ্চারণ চিহ্নযুক্ত অক্ষর, বাংলা অক্ষর বা ইমোজি কয়েক বাইট নেয়, তাই 8 বিটের বেশি হয়। যেমন ñ হলো দুই বাইট: 11000011 10110001 (হেক্সাডেসিমালে C3 B1)।

টুল দিয়ে এসব কীভাবে করবেন

«বাইনারি, দশমিক ও হেক্স» কনভার্টার আপনার হাতের হিসাব যাচাই করতে বা লম্বা সংখ্যা ভুল ছাড়া সমাধান করতে কাজে লাগে।

  1. সংখ্যাটি তার বেসের ঘরে লিখুন: «দশমিক (বেস 10)», «বাইনারি (বেস 2)», অক্টাল বা «হেক্সাডেসিমাল (বেস 16)»। বাকি তিনটি নিজে থেকেই পূরণ হয়ে যায়।
  2. কোনো অঙ্ক ওই বেসের জন্য ঠিক না হলে (যেমন বাইনারিতে 2), টুলটি আপনাকে জানায়।
  3. টেক্সটের জন্য «টেক্সট» ঘরে লিখুন এবং «বাইনারি (প্রতি অক্ষরে 8 বিট)» ও বাইট অনুযায়ী হেক্সাডেসিমাল দেখুন। টেক্সটে ফিরে যেতে 8 বিটের গ্রুপে বিট পেস্টও করতে পারেন।
  4. অস্বাভাবিক বেসের জন্য «যেকোনো বেস (2 থেকে 36)» ব্যবহার করুন: উৎসের বেস, গন্তব্যের বেস ও সংখ্যাটি বেছে নিন।

সীমাবদ্ধতা: এটি শুধু অঋণাত্মক পূর্ণসংখ্যা রূপান্তর করে (দশমিক বা চিহ্ন ছাড়া) এবং আপনার জন্য বামে শূন্য বসায় না, তাই নির্দিষ্ট 8 বিট চাইলে নিজে পূরণ করতে হবে (13 হলো 00001101)। আপনি যা লেখেন তার কিছুই আপনার ব্রাউজারের বাইরে যায় না।

সাধারণ ভুল

অনুশীলনের জন্য সমাধান করা অনুশীলনী

উত্তর দেখার আগে প্রতিটি নিজে সমাধান করার চেষ্টা করুন, তারপর টুল দিয়ে যাচাই করুন।

সচরাচর জিজ্ঞাসা

বাইনারি 1101 কে দশমিকে কীভাবে বদলাব?

যেসব ঘরে 1 আছে তাদের মান যোগ করবেন: 8 + 4 + 1 = 13। ডান থেকে দ্বিতীয় অঙ্কটি 0, তাই 2 যোগ হয় না।

255 বাইনারি ও হেক্সাডেসিমালে কত?

255 হলো বাইনারিতে 11111111 এবং হেক্সাডেসিমালে FF। এটি 8 বিটের এক বাইটে ধরে এমন সর্বোচ্চ মান।

হেক্সাডেসিমালে অক্ষর কেন ব্যবহার হয়?

কারণ এতে ষোলোটি আলাদা চিহ্ন দরকার, অথচ দশমিক পদ্ধতি দেয় মাত্র দশটি (0 থেকে 9)। তাই A মানে 10, B মানে 11, C মানে 12, D মানে 13, E মানে 14 এবং F মানে 15।

8 বিট দিয়ে কতগুলো আলাদা সংখ্যা লেখা যায়?

256টি, 0 থেকে 255। সাধারণভাবে n বিট দিয়ে 2-এর n ঘাত সংখ্যক মান প্রকাশ করা যায়।

টুলটি কি ঋণাত্মক বা দশমিকযুক্ত সংখ্যা রূপান্তর করে?

না, শুধু অঋণাত্মক পূর্ণসংখ্যা। টেক্সটের জন্য এটি UTF-8 ব্যবহার করে, তাই উচ্চারণ চিহ্নযুক্ত অক্ষর ও ইমোজি 8 বিটের বেশি হয়।