پرش به محتوای اصلی

تبدیل مبنای اعداد رایگان

اعداد را بین باینری، اکتال، دسیمال و هگزادسیمال تبدیل کنید. اندازه بیت و خروجی باینری گروه‌بندی‌شده را فوری ببینید.

پس از بارگذاری آفلاین کار می‌کند
مبنای ورودی:

مقادیر سریع

کاربردهای رایج

  • تبدیل اعداد برای برنامه‌نویسیتبدیل بین دودویی، هشتی، دهدهی و شانزده‌دهی هنگام نوشتن کد - مرجع فوری برای هر عددی.
  • تبدیل اعداد برای شبکه‌سازیتبدیل ماسک‌های زیرشبکه، شماره‌های درگاه و هشتک‌های آدرس IP بین دودویی و دهدهی.
  • سیستم‌های عددی برای علوم کامپیوتریادگیری و تأیید تبدیل‌های دودویی، هشتی و شانزده‌دهی - ایده‌آل برای دانش‌جویان CS و آمادگی آزمون.
  • بررسی الگوهای بیتی و پرچم‌هاتبدیل اعداد به دودویی برای بررسی بیت‌های انفرادی، ماسک‌های بیتی و ترکیب‌های پرچم.
  • رمزگشایی تخلیه‌های شانزده‌دهی و گزارش‌های اشکال‌زداییرمزگشایی مقادیر شانزده‌دهی از گزارش‌های خرابی، تخلیه‌های حافظه و گزارش‌های اشکال‌زدایی به دهدهی قابل‌خواندگی.

نحوه کار

تبدیل کاملاً در مرورگر شما با استفاده از نوع BigInt داخلی جاوااسکریپت اجرا می‌شود — بدون کتابخانه، بدون سرور. BigInt به‌جای رویکرد قدیمی‌تر parseInt/Number مشخصاً برای مدیریت مقادیر بزرگ‌تر از ۲^۵۳ بدون خطای گرد استفاده می‌شود.

  1. 1
    تجزیه ورودی با BigInt
    یک تجزیه‌گر سفارشی پیشوندهای اختیاری (0x، 0b، 0o، #) را حذف می‌کند و مجموعه کاراکتر را برای مبنای انتخابی اعتبارسنجی می‌کند، سپس رشته پاک‌شده را به سازنده BigInt() تحویل می‌دهد، که اعداد صحیح دلخواه-بزرگ را بدون-افت مدیریت می‌کند.
  2. 2
    تبدیل مبنا همزمان
    به محض دانستن مقدار BigInt، ابزار BigInt.prototype.toString() را با هر مبنا (۲، ۸، ۱۰، ۱۶، و مبنای انتخابی کاربر از ۲ تا ۳۶) فراخوانی می‌کند تا همه نمایش‌های خروجی را در یک پاس تولید کند — گام دهدهی میانی لازم نیست.
  3. 3
    گروه‌بندی دودویی و بررسی عرض-بیت
    خروجی دودویی تا مضربی از ۴ با صفر پر می‌شود و برای خوانایی به گروه‌های نیبل تقسیم می‌شود. ابزار همچنین بررسی می‌کند آیا مقدار در بازه‌های علامت‌دار/بدون‌علامت ۴، ۸، ۱۶، یا ۳۲ بیتی با استفاده از حساب BigInt جا می‌گیرد، پس رفتار سرریز حتی برای مرزهای ۳۲بیتی دقیق است.
  4. 4
    حالت URL قابل‌اشتراک
    پس از هر تبدیل معتبر، ابزار ورودی و مبنای منبع را در fragment URL (#v=&from=) از طریق history.replaceState می‌نویسد، پس تبدیل فعلی می‌تواند نشان‌گذاری یا به اشتراک گذاشته شود — fragment هرگز به هیچ سروری ارسال نمی‌شود.

ابزارهای مرتبط

سؤالات متداول