بائنری/ہیکس کنورٹر

نمبروں کو بائنری، ہیکس، ڈیسیمل اور اوکٹل کے درمیان تبدیل کریں — یا ٹیکسٹ کو بائٹس میں تبدیل کریں۔

تیار ہے۔ تبدیل کرنے کے لیے کوئی نمبر یا ٹیکسٹ ٹائپ کریں۔

ہر تبدیلی آپ کے براؤزر میں چلتی ہے۔ آپ کے نمبر اور ٹیکسٹ کبھی بھی آپ کے ڈیوائس سے باہر نہیں جاتے۔

عمومی سوالات

میں یہاں کیا تبدیل کر سکتا ہوں؟

دو چیزیں۔ نمبر موڈ بائنری، اوکٹل، ڈیسیمل اور ہیکساڈیسیمل کو جوڑتا ہے — کسی بھی ایک فیلڈ میں ترمیم کریں اور باقی فوری طور پر اپ ڈیٹ ہو جائیں گے۔ ٹیکسٹ موڈ کسی بھی ٹیکسٹ کو آپ کی منتخب کردہ بیس میں اس کی بائٹ ویلیوز میں تبدیل کرتا ہے، اور ان بائٹس کو واپس ٹیکسٹ میں پڑھتا ہے۔

کیا یہ منفی اور بہت بڑے نمبروں کو ہینڈل کرتا ہے؟

جی ہاں۔ منفی نمبر ہر بیس میں منفی کی علامت (-) برقرار رکھتے ہیں، اور سائز کی کوئی ایسی حد نہیں ہے جس کی فکر کی جائے — ویلیوز بالکل درست طریقے سے تبدیل ہوتی ہیں، بغیر کسی راؤنڈنگ کے۔ یہاں کوئی فکسڈ-وڈتھ ٹوز-کمپلیمنٹ (two's-complement) ویو نہیں ہے، کیونکہ یہ صرف اسی وقت معنی رکھتا ہے جب آپ بٹ کی چوڑائی منتخب کریں۔

کیا میرا ان پٹ کہیں بھیجا جاتا ہے؟

نہیں۔ سب کچھ آپ کے براؤزر میں مقامی طور پر شمار کیا جاتا ہے، اس لیے جو کچھ بھی آپ ٹائپ کرتے ہیں وہ اپ لوڈ نہیں ہوتا۔

نمبر بیسز اور بائٹ کنورژن کی بنیادی تفہیم

کمپیوٹنگ اور ڈیجیٹل سسٹمز میں ڈیٹا کو مختلف عددی نظاموں (Number Bases) میں ظاہر کیا جاتا ہے۔ ان میں بائنری (بیس 2)، اوکٹل (بیس 8)، ڈیسیمل (بیس 10)، اور ہیکساڈیسیمل (بیس 16) شامل ہیں۔ بائنری نظام صرف 0 اور 1 پر مشتمل ہوتا ہے اور یہ کمپیوٹر ہارڈویئر کی بنیادی زبان ہے۔ اوکٹل نظام میں 0 سے 7 تک کے ہندسے استعمال ہوتے ہیں، جبکہ عام زندگی میں استعمال ہونے والا ڈیسیمل نظام 0 سے 9 تک کے ہندسوں پر مبنی ہوتا ہے۔ ہیکساڈیسیمل یا ہیکس نظام میں 0 سے 9 تک کے ہندسوں کے ساتھ A سے F تک کے حروف شامل ہوتے ہیں، جو بڑی بائنری ویلیوز کو مختصر اور پڑھنے کے قابل شکل میں پیش کرنے کے لیے استعمال ہوتا ہے۔

جب ہم ٹیکسٹ ڈیٹا کی بات کرتے ہیں، تو ہر کیریکٹر کو کمپیوٹر میموری میں محفوظ کرنے کے لیے بائٹس (Bytes) میں تبدیل کیا جاتا ہے۔ UTF-8 انکوڈنگ کے تحت، ٹیکسٹ کا ہر کیریکٹر ایک یا ایک سے زیادہ بائٹس پر مشتمل ہوتا ہے، جہاں ہر بائٹ کی ویلیو ڈیسیمل میں 0 سے 255 کے درمیان ہوتی ہے۔ ان بائٹ ویلیوز کو بائنری، اوکٹل، ڈیسیمل، یا ہیکس کی شکل میں دیکھا اور تبدیل کیا جا سکتا ہے۔

نمبر موڈ میں عددی تبدیلی کے اصول

نمبر موڈ میں کام کرتے ہوئے، یہ ٹول بائنری، اوکٹل، ڈیسیمل، اور ہیکس فارمیٹس کے درمیان فوری اور لچکدار تبدیلی فراہم کرتا ہے۔ جب آپ کسی بھی ایک فیلڈ میں کوئی نمبر لکھتے ہیں، تو باقی تینوں فیلڈز فوری طور پر اپ ڈیٹ ہو جاتی ہیں۔

اس موڈ میں ان پٹ اور آؤٹ پٹ کے لیے درج ذیل تکنیکی اصول لاگو ہوتے ہیں:

  • ان پٹ فارمیٹ کی لچک: نمبرز میں شروع میں منفی علامت (-)، ارد گرد خالی جگہیں (spaces)، اور مختلف فارمیٹ کے پریفکس جیسے 0b (بائنری کے لیے)، 0o (اوکٹل کے لیے)، یا 0x (ہیکس کے لیے) شامل ہو سکتے ہیں۔ اس کے علاوہ، پڑھنے میں آسانی کے لیے انڈرسکور (_) اور وائٹ اسپیس سیپریٹرز بھی استعمال کیے جا سکتے ہیں۔
  • منفی نمبرز کی نمائندگی: منفی نمبرز کی تبدیلی کے دوران تمام بیسز میں شروع کی منفی علامت (-) برقرار رہتی ہے۔
  • لامحدود درستگی (Arbitrary Precision): نمبرز کی پروسیسنگ کے لیے BigInt کا استعمال کیا جاتا ہے، جو 4,096 کیریکٹرز تک کے بڑے انٹیجرز کی سپورٹ فراہم کرتا ہے۔ اس کی وجہ سے نمبرز کی تبدیلی میں راؤنڈنگ (rounding) نہیں ہوتی اور ویلیوز بالکل درست طریقے سے تبدیل ہوتی ہیں۔
  • آؤٹ پٹ پیڈنگ (Padding): بائنری آؤٹ پٹ کو 8 بٹس تک، اوکٹل کو 3 بٹس تک، اور ہیکساڈیسیمل کو 2 بٹس تک شروع میں صفر (leading zeros) لگا کر پیڈ کیا جاتا ہے۔ ڈیسیمل آؤٹ پٹ میں کوئی پیڈنگ نہیں کی جاتی۔ ہیکساڈیسیمل آؤٹ پٹ میں ہمیشہ بڑے حروف (uppercase) استعمال ہوتے ہیں۔

اگر ان پٹ میں کوئی ایسا ہندسہ شامل کیا جائے جو اس بیس کے دائرہ کار سے باہر ہو، تو ٹول پروسیسنگ روک دیتا ہے اور یہ خرابی کا پیغام دکھاتا ہے: "اس بیس کے لیے درست نمبر نہیں ہے — ایسے ہندسے چیک کریں جو اس میں شامل نہیں ہو سکتے۔"

کامیاب تبدیلی کے بعد، ٹول کا اسٹیٹس تبدیل ہو کر "تبدیل ہو گیا۔" ہو جاتا ہے۔

ٹیکسٹ اور بائٹس کی باہمی تبدیلی

ٹیکسٹ موڈ میں، یہ ٹول ٹیکسٹ کو اس کی بائٹ ویلیوز میں تبدیل کرنے (ان کوڈ) اور بائٹ ویلیوز کو واپس ٹیکسٹ میں تبدیل کرنے (ڈی کوڈ) کی صلاحیت رکھتا ہے۔ اس عمل کے لیے UTF-8 انکوڈنگ کا معیار استعمال کیا جاتا ہے۔

ٹیکسٹ سے بائٹس (ان کوڈنگ)

جب آپ کوئی ٹیکسٹ ان پٹ کرتے ہیں، تو ٹول اسے منتخب کردہ بیس (بائنری، اوکٹل، ڈیسیمل، یا ہیکس) کے بائٹ کوڈز میں تبدیل کر دیتا ہے۔ ٹیکسٹ ان پٹ کی زیادہ سے زیادہ حد 200,000 کیریکٹرز ہے۔ اگر ان پٹ اس حد سے تجاوز کر جائے، تو ٹول یہ ایرر دکھاتا ہے: "یہ اس ٹول کے لیے بہت لمبا ہے — چھوٹا ان پٹ آزمائیں۔"

کامیاب ان کوڈنگ کے بعد اسٹیٹس "این کوڈ ہو گیا۔" ظاہر ہوتا ہے۔

بائٹس سے ٹیکسٹ (ڈی کوڈنگ)

بائٹ ویلیوز کو واپس ٹیکسٹ میں تبدیل کرتے وقت، ان پٹ بائٹس کو وائٹ اسپیس یا کوما (,) کے ذریعے الگ کیا جا سکتا ہے۔ ڈی کوڈنگ کے عمل کے دوران ٹول سخت اصولوں پر عمل کرتا ہے:

  1. ہر بائٹ ویلیو کا منتخب کردہ بیس کے مطابق 0 سے 255 کے درمیان ہونا لازمی ہے۔ اگر کوئی ویلیو اس رینج سے باہر ہو یا بیس کے لیے غیر موزوں ہو، تو یہ ایرر ظاہر ہوتا ہے: "یہ درست بائٹ کوڈز نہیں ہیں — ہر ویلیو کا منتخب کردہ بیس میں ایک بائٹ (0-255) ہونا ضروری ہے۔"
  2. ان پٹ بائٹس کا درست UTF-8 بائٹ اسٹریم ہونا ضروری ہے۔ اگر بائٹس غیر معتبر ہوں، تو ٹول یہ ایرر دکھاتا ہے: "وہ بائٹس درست UTF-8 نہیں ہیں، اس لیے انہیں ٹیکسٹ کے طور پر نہیں دکھایا جا سکتا۔"

کامیاب ڈی کوڈنگ کے بعد اسٹیٹس "ڈی کوڈ ہو گیا۔" ہو جاتا ہے۔

مقامی پروسیسنگ اور رازداری

اس ٹول کی تمام تر پروسیسنگ مکمل طور پر صارف کے براؤزر کے اندر مقامی طور پر انجام پاتی ہے۔ جب آپ نمبر یا ٹیکسٹ تبدیل کرتے ہیں، تو وہ ڈیٹا کسی بیرونی سرور پر اپ لوڈ نہیں ہوتا اور نہ ہی آپ کے ڈیوائس سے باہر جاتا ہے۔ یہ مقامی پروسیسنگ ڈیٹا کی رازداری کو یقینی بناتی ہے۔ جب ان پٹ فیلڈ کو خالی کیا جاتا ہے، تو اسٹیٹس "صاف کر دیا گیا۔" پر سیٹ ہو جاتا ہے۔

کثرت سے پوچھے جانے والے سوالات (FAQ)

میں یہاں کیا تبدیل کر سکتا ہوں؟

دو چیزیں۔ نمبر موڈ بائنری، اوکٹل، ڈیسیمل اور ہیکساڈیسیمل کو جوڑتا ہے — کسی بھی ایک فیلڈ میں ترمیم کریں اور باقی فوری طور پر اپ ڈیٹ ہو جائیں گے۔ ٹیکسٹ موڈ کسی بھی ٹیکسٹ کو آپ کی منتخب کردہ بیس میں اس کی بائٹ ویلیوز میں تبدیل کرتا ہے، اور ان بائٹس کو واپس ٹیکسٹ میں پڑھتا ہے۔

کیا یہ منفی اور بہت بڑے نمبروں کو ہینڈل کرتا ہے؟

جی ہاں۔ منفی نمبر ہر بیس میں منفی کی علامت (-) برقرار رکھتے ہیں، اور سائز کی کوئی ایسی حد نہیں ہے جس کی فکر کی جائے — ویلیوز بالکل درست طریقے سے تبدیل ہوتی ہیں، بغیر کسی راؤنڈنگ کے۔ یہاں کوئی فکسڈ-وڈتھ ٹوز-کمپلیمنٹ (two's-complement) ویو نہیں ہے، کیونکہ یہ صرف اسی وقت معنی رکھتا ہے جب آپ بٹ کی چوڑائی منتخب کریں۔

کیا میرا ان پٹ کہیں بھیجا جاتا ہے؟

نہیں۔ سب کچھ آپ کے براؤزر میں مقامی طور پر شمار کیا جاتا ہے، اس لیے جو کچھ بھی آپ ٹائپ کرتے ہیں وہ اپ لوڈ نہیں ہوتا۔

ٹیکسٹ موڈ میں ان پٹ کی حد کیا ہے؟

ٹیکسٹ موڈ میں ان پٹ کے لیے زیادہ سے زیادہ حد 200,000 کیریکٹرز ہے۔ اس سے بڑے ان پٹ پر ٹول کام نہیں کرے گا اور حد سے متعلق خرابی کا پیغام دکھائے گا۔