انجمن‌های فارسی اوبونتو

لطفاً به انجمن‌ها وارد شده و یا جهت ورود ثبت‌نام نمائید

لطفاً جهت ورود نام کاربری و رمز عبورتان را وارد نمائید




نویسنده موضوع: تولید کد MIPS (حل شد)  (دفعات بازدید: 1121 بار)

0 کاربر و 5 مهمان درحال مشاهده موضوع.

آفلاین electrical ali

  • Jr. Member
  • *
  • ارسال: 88
  • جنسیت : پسر
  • !Have a giggity day
تولید کد MIPS (حل شد)
« : 05 آبان 1400، 07:10 ب‌ظ »
سلام به همه
من یه برنامه C یا C++ دارم و میخوام به اسمبلی MIPS ببینم چی میشه.
با دستور پایین میتونم اسمبلی رو به فرم اینتل ببینم:
g++ -S fileName.cpp
ولی نمیدونم چجوری تو فرم ISA MIPS میتونم ببینم.
« آخرین ویرایش: 10 آبان 1400، 07:40 ب‌ظ توسط electrical ali »

آفلاین َUxmlai-ad

  • Sr. Member
  • *
  • ارسال: 486
  • جنسیت : پسر
  • متنفر از گنو و FSF
پاسخ : تولید کد MIPS
« پاسخ #1 : 05 آبان 1400، 10:23 ب‌ظ »
منظورتون x86 هست یا یه چیز دیگه؟
متنفر از گنو و FSF

آفلاین electrical ali

  • Jr. Member
  • *
  • ارسال: 88
  • جنسیت : پسر
  • !Have a giggity day
پاسخ : تولید کد MIPS
« پاسخ #2 : 06 آبان 1400، 09:48 ق‌ظ »
منظورتون x86 هست یا یه چیز دیگه؟
منظورم ISA MIPS هستش بنظر کمتر استفاده میشه ولی خب دارن دانشگاه همینو بهمون درس میدن :(

آفلاین َUxmlai-ad

  • Sr. Member
  • *
  • ارسال: 486
  • جنسیت : پسر
  • متنفر از گنو و FSF
پاسخ : تولید کد MIPS
« پاسخ #3 : 06 آبان 1400، 10:15 ق‌ظ »
منظورتون از فرم اینتل چیه؟ همون x86 یا یه چیز دیگه؟
متنفر از گنو و FSF

آفلاین electrical ali

  • Jr. Member
  • *
  • ارسال: 88
  • جنسیت : پسر
  • !Have a giggity day
پاسخ : تولید کد MIPS
« پاسخ #4 : 06 آبان 1400، 12:14 ب‌ظ »
منظورتون از فرم اینتل چیه؟ همون x86 یا یه چیز دیگه؟
آره فرم اینتل x86 هستش

آفلاین َUxmlai-ad

  • Sr. Member
  • *
  • ارسال: 486
  • جنسیت : پسر
  • متنفر از گنو و FSF
پاسخ : تولید کد MIPS
« پاسخ #5 : 07 آبان 1400، 02:24 ب‌ظ »
فکر کنم اگه همین کار رو با یک کامپایلر متقابل (cross compiler) انجام بدید بشه
برای اینکار باید یک کامپایلر متقابل برای معماری mips  بسازید
متنفر از گنو و FSF

آفلاین Dragon-

  • عضو کاربران ایرانی اوبونتو
  • *
  • ارسال: 5125
  • جنسیت : پسر
پاسخ : تولید کد MIPS
« پاسخ #6 : 07 آبان 1400، 03:04 ب‌ظ »
میدونید که زکات علم نشر آن است

آفلاین electrical ali

  • Jr. Member
  • *
  • ارسال: 88
  • جنسیت : پسر
  • !Have a giggity day
پاسخ : تولید کد MIPS
« پاسخ #7 : 07 آبان 1400، 10:49 ب‌ظ »
فکر کنم اگه همین کار رو با یک کامپایلر متقابل (cross compiler) انجام بدید بشه
برای اینکار باید یک کامپایلر متقابل برای معماری mips  بسازید
کامپایلر ساختن که بلد نیستم راستش ;D

آفلاین َUxmlai-ad

  • Sr. Member
  • *
  • ارسال: 486
  • جنسیت : پسر
  • متنفر از گنو و FSF
پاسخ : تولید کد MIPS
« پاسخ #8 : 08 آبان 1400، 08:12 ق‌ظ »
فکر کنم اگه همین کار رو با یک کامپایلر متقابل (cross compiler) انجام بدید بشه
برای اینکار باید یک کامپایلر متقابل برای معماری mips  بسازید
کامپایلر ساختن که بلد نیستم راستش ;D
نه فقط باید سورسشو کامپایل کنی توی اینترنت بگردی پیدا میشه
متنفر از گنو و FSF

آفلاین alitoos23

  • Full Member
  • *
  • ارسال: 132
  • جنسیت : پسر
پاسخ : تولید کد MIPS
« پاسخ #9 : 10 آبان 1400، 04:37 ب‌ظ »
شما برای MIPS باید بسته ی gcc-mips-linux-gnu و
binutils-mips-linux-gnu رو نصب کنید و با ابزار mips-gcc کدتون رو کاپایل کنید اینکه چه فلگ هایی برای بیلد لازم هست بسته نوع پردازنده و شاید احتملا سند لینکر یا چیزی باشه .‌‌در هر حال زمانی که بلید شد فایل خروجی با پسوند elf دریافت می کنید که می تونید با
mipsel-linux-gnu-objdump -D x.o


تو این آدرس هم توضیحات خوبی هست :
https://stackoverflow.com/questions/9916130/how-do-i-disassemble-raw-mips-code

آفلاین َUxmlai-ad

  • Sr. Member
  • *
  • ارسال: 486
  • جنسیت : پسر
  • متنفر از گنو و FSF
پاسخ : تولید کد MIPS
« پاسخ #10 : 10 آبان 1400، 05:21 ب‌ظ »
شما برای MIPS باید بسته ی gcc-mips-linux-gnu و
binutils-mips-linux-gnu رو نصب کنید و با ابزار mips-gcc کدتون رو کاپایل کنید اینکه چه فلگ هایی برای بیلد لازم هست بسته نوع پردازنده و شاید احتملا سند لینکر یا چیزی باشه .‌‌در هر حال زمانی که بلید شد فایل خروجی با پسوند elf دریافت می کنید که می تونید با
mipsel-linux-gnu-objdump -D x.o


تو این آدرس هم توضیحات خوبی هست :
https://stackoverflow.com/questions/9916130/how-do-i-disassemble-raw-mips-code
بله همین هم خودش یک کامپایلر متقابل هست بعضی وقتا بسته های نصبی برای این جور چیزا یه خورده قدیمی هست به همین خاطر گفتم سورسش رو کامپایل کنید
متنفر از گنو و FSF

آفلاین electrical ali

  • Jr. Member
  • *
  • ارسال: 88
  • جنسیت : پسر
  • !Have a giggity day
پاسخ : تولید کد MIPS
« پاسخ #11 : 10 آبان 1400، 07:40 ب‌ظ »
اینجا رو ببینید.
https://github.com/lorenzo2897/c-mips-compiler
سلام ممنون این لینک کار رو اکی کرد.
« آخرین ویرایش: 13 آبان 1400، 12:43 ق‌ظ توسط electrical ali »

آفلاین جعفر فرقانلوژ

  • High Hero Member
  • *
  • ارسال: 5100
  • جنسیت : پسر
  • اممم . اره دیگه! mehr32
پاسخ : تولید کد MIPS (حل شد)
« پاسخ #12 : 13 آبان 1400، 08:54 ق‌ظ »
لطفا کلمات زبان های دیگر را با فارسی ترکیب نکنید
دیگر به انجمن باز نخواهم گشت شاید جایی با این نام پیدام کنید اگه کاری با من دارید : qxc9966@protonmail.com

آفلاین Dragon-

  • عضو کاربران ایرانی اوبونتو
  • *
  • ارسال: 5125
  • جنسیت : پسر
پاسخ : تولید کد MIPS
« پاسخ #13 : 13 آبان 1400، 03:05 ب‌ظ »
سلام ممنون این لینک کار رو اکی کرد.
با موفقیت کد رو تبدیل به اسمبلی mips کرد؟ من خود کامپایلر رو کامپایل کردم و بعد سعی کردم یه hello world ساده به زبان c رو باهاش تبدیل به اسمبلی mips کنم ولی همش خطا داد.
میدونید که زکات علم نشر آن است