هشت‌هشتی

هشت‌هشتی

آسان

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

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

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

نکته

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

درباره‌ی مبنای هشت (پایه‌ی ۸)

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

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

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

برای مثال:

   233 # decimal
 = 2*10^2 + 3*10^1 + 3*10^0
 = 2*100  + 3*10   + 3*1

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

برای مثال:

   233 # octal
 = 2*8^2 + 3*8^1 + 3*8^0
 = 2*64  + 3*8   + 3*1
 = 128   + 24    + 3
 = 155

ثبات‌ها

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

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

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