বাইনারি কনভার্টার
বাইনারি 1010 দশমিকে 10। দশমিক 255 বাইনারিতে লেখা হয় 11111111।
কীভাবে ব্যবহার করবেন
- চারটি ঘরের যেকোনোটিতে সংখ্যা লিখুন: বাইনারি, অকটাল, দশমিক বা হেক্স। বাকি তিনটি সঙ্গে সঙ্গে বদলে যায়। বিয়োগ চিহ্ন, ফাঁকা জায়গা, আন্ডারস্কোর এবং 0b, 0o, 0x-এর মতো উপসর্গ চলবে।
- লম্বা বাইনারি সংখ্যা পড়া সহজ করতে "চার বিটের গ্রুপ" ঘরে টিক দিন।
- টেক্সট রূপান্তর করতে সেটি টেক্সটের ঘরে লিখুন, বাইনারি 8 বিটের গ্রুপে দেখা যাবে। অথবা বাইনারির ঘরে বাইনারি পেস্ট করলে টেক্সট দেখা যাবে। গ্রুপের মাঝে ফাঁকা রাখা ঐচ্ছিক।
হিসাব কীভাবে হয়
প্রতিটি ঘর নিজের ভিত্তিতে অঙ্ক ধরে ধরে পড়া হয় এবং BigInt হিসেবে রাখা হয়, তাই খুব বড় মানও কোনো পূর্ণ করা ছাড়াই ঠিকঠাক রূপান্তর হয়। বাকি ঘরগুলো ওই একটি মান থেকেই লেখা হয়।
ঋণাত্মক সংখ্যা বিয়োগ চিহ্ন নিয়েই থাকে (-1010 মানে -10), টুজ কমপ্লিমেন্ট হিসেবে দেখানো হয় না। নির্দিষ্ট প্রস্থের টুজ কমপ্লিমেন্টের জন্য ধনাত্মক রূপটি নিয়ে নিজে উল্টে নিন।
টেক্সট আগে UTF-8 এনকোড হয়, তারপর প্রতিটি বাইট 8 বিট করে লেখা হয়। সাধারণ ইংরেজি অক্ষরে একটি বাইট লাগে, বাংলা অক্ষরে সাধারণত তিনটি, অ্যাকসেন্টযুক্ত অক্ষর ও বেশিরভাগ চিহ্নে দুই বা তিনটি, আর ইমোজিতে চারটি। বাইনারি স্ট্রিং তখনই টেক্সটে ফিরে যায় যখন তার দৈর্ঘ্য 8-এর গুণিতক হয় এবং বাইটগুলো বৈধ UTF-8 হয়।
পরিচিত মান
| দশমিক | বাইনারি | অকটাল | হেক্স |
|---|---|---|---|
| 10 | 1010 | 12 | A |
| 42 | 101010 | 52 | 2A |
| 100 | 1100100 | 144 | 64 |
| 255 | 11111111 | 377 | FF |
| 256 | 100000000 | 400 | 100 |
| 1024 | 10000000000 | 2000 | 400 |
সাধারণ প্রশ্ন
হাতে হাতে বাইনারি থেকে দশমিক কীভাবে করব?
ডান দিক থেকে 1, 2, 4, 8, 16 এভাবে স্থানীয় মান লিখুন, তারপর যেখানে অঙ্কটি 1 সেই মানগুলো যোগ করুন। 1101-এর জন্য এটি 8 + 4 + 1 = 13।
দশমিক থেকে বাইনারি কীভাবে করব?
বারবার 2 দিয়ে ভাগ করুন এবং প্রতিবারের ভাগশেষ লিখে রাখুন। ভাগশেষগুলো শেষ থেকে প্রথমে পড়ুন। 13-এর জন্য: 13 ÷ 2 = 6 ভাগশেষ 1, 6 ÷ 2 = 3 ভাগশেষ 0, 3 ÷ 2 = 1 ভাগশেষ 1, 1 ÷ 2 = 0 ভাগশেষ 1, তাই 13 হলো 1101।
বাইনারি থেকে হেক্স কীভাবে করব?
বাইনারি সংখ্যাকে ডান দিক থেকে 4 বিটের গ্রুপে ভাগ করে প্রতিটি গ্রুপের জায়গায় একটি হেক্স অঙ্ক বসান। 1010 1111 হয় AF। গ্রুপগুলো দেখতে "চার বিটের গ্রুপ"-এ টিক দিন।
একটি অক্ষর 8টি বাইনারি অঙ্ক হয় কেন?
কম্পিউটার টেক্সটকে বাইট হিসেবে রাখে, আর এক বাইট হলো 8 বিট। অক্ষর A হলো বাইট 65, মানে 01000001। সাধারণ ইংরেজির বাইরের অক্ষরে UTF-8-এ একাধিক বাইট লাগে, যেমন বাংলা অক্ষরে সাধারণত তিন বাইট।
বাইনারি পেস্ট করলে ত্রুটি আসে কেন?
টেক্সটে রূপান্তরের জন্য শুধু 0 ও 1 লাগে (ফাঁকা জায়গা ও আন্ডারস্কোর বাদ যায়), মোট দৈর্ঘ্য 8-এর গুণিতক হতে হয়, আর বাইটগুলো বৈধ UTF-8 হতে হয়। একটি বাড়তি অঙ্ক বা একটি বিট কম থাকলে এর কোনো একটি ভেঙে যায়।
আকারের কোনো সীমা আছে কি?
সংখ্যা রূপান্তরের কোনো নির্দিষ্ট সীমা নেই, কারণ এতে BigInt ব্যবহার হয়। তবে খুব লম্বা ইনপুটে লিখতে ধীর লাগে। আপনি যা লেখেন তা কোনো সার্ভারে পাঠানো হয় না।