دودویی

دودویی

آسان

دستورالعمل‌ها

یک عدد دودویی را که به‌صورت رشته‌ای نشان داده می‌شود (مثلاً «101010») با استفاده از اصول اولیه به معادل دهدهی‌اش تبدیل کنید.

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

نکته

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

درباره‌ی دودویی (مبنای ۲)

دهدهی یک دستگاه با مبنای ۱۰ است.

عدد ۲۳ در نماد مبنای ۱۰ را می‌توان به‌صورت ترکیبی خطی از توان‌های ۱۰ درک کرد:

  • رقم منتهی‌الیه سمت راست در ۱۰^۰ = ۱ ضرب می‌شود
  • رقم بعدی در ۱۰^۱ = ۱۰ ضرب می‌شود
  • ...
  • رقم n‌اُم در ۱۰^(n-1) ضرب می‌شود.
  • همه‌ی این مقدارها با هم جمع می‌شوند.

بنابراین: 23 => 2*10^1 + 3*10^0 => 2*10 + 3*1 = 23 base 10

دودویی مشابه است، اما به‌جای توان‌های ۱۰ از توان‌های ۲ استفاده می‌کند.

بنابراین: 101 => 1*2^2 + 0*2^1 + 1*2^0 => 1*4 + 0*2 + 1*1 => 4 + 1 => 5 base 10.

ثبات‌ها

ثبات کاربرد نوع توضیح
$a0 ورودی آدرس رشته‌ی پایان‌یافته با نال از کاراکترهای دودویی
$v0 خروجی عدد صحیح مقدار دهدهی رشته‌ی ورودی
$t0-9 موقت هر برای ذخیره‌سازی موقت به کار می‌رود
ویرایش از طریق GitHub این لینک در پنجره یا زبانه‌ی جدیدی باز می‌شود
MIPS Assembly Exercism

آماده‌اید دودویی را شروع کنید؟

در Exercism ثبت‌نام کنید تا MIPS Assembly را همراه با 70 تمرین و مربی‌گری انسانی واقعی یاد بگیرید و در آن استاد شوید، همه‌ی این‌ها رایگان.