دیساسمبلر: تفاوت میان نسخهها
محتوای حذفشده محتوای افزودهشده
ابرابزار، اصلاح املا، برچسب ویکیسازی |
جز ربات ردهٔ همسنگ (۲۴) +املا (۷.۷): + رده:اشکالزدایی |
||
خط ۲:
'''دیس اسمبلر''' {{به انگلیسی|Disassembler}} برنامهای کامپیوتری است که زبان ماشین را به [[زبان اسمبلی]] ترجمه میکند، عملیات معکوس آن از یک اسمبلر است.
یک دیس اسمبلر با دی کامپایلر تفاوتهایی دارد که هدف یک زبان سطح بالا به جای زبان اسمبلی است. جداسازی قطعات، خروجی از یک اسمبلر اغلب برای انسان فرمت بندی شده است_قابلیت خواندن به جای مناسب بودن برای ورودی به اسمبلر، آن را
کد منبع زبان اسمبلی به طور کلی مجاز به استفاده از ثابتها و نظرات برنامه نویس است. که اینها
جداسازی قطعات یک علم دقیق نیست:در سیستم عامل هایCISC با دستور العمل متغیر عرض، ویا در صورت وجود کد خود متغیر، ممکن است برای یک برنامه واحد به دو یا تعداد بیشتری جداسازی قطعات معقول تر نیاز پیدا کنیم. تعیین دستورالعمل که در واقع مواجه شده است در طی یک اجرا از این برنامه ثبات قابل حل را به مشکل توقف شده کاهش میدهد.
خط ۱۰:
== مشکلات جداسازی قطعهها ==
نوشتن یک دی اسمبلر که به تولید کد که زمانی که جمع شده است تولید دقیق باینری اصلی را امکانپذیر میکند؛ با این حال، اغلب تفاوت وجود دارد. این امر خواستههای در بازنمونگری از اسمبلر است. به عنوان مثال در اسمبلرهای x۸۶ یک انتخاب دلخواه بین دو کد دودویی برای چیزی به عنوان مثال "AX MOV، BX" طول میکشد. اگر کد اصلی از انتخابهای دیگر استفاده کند، کد اصلی به سادگی نمیتواند در هر نقطه داده شده در زمان تکثیر شود. با این حال، حتی زمانی که جداسازی قطعات
== نمونههایی از دیس اسمبلرها ==
اسمبلر ممکن است به تنهایی و یا تعاملی باشد. یک دی اسمبلر مستقل به هنگام اجرا یک فایل زبان اسمبلی تولید میکند که میتواند مورد بررسی قرار گیرد. یک تعاملی نشان میدهد تاثیر دو گونه تغییر کاربر را
IDA
خط ۲۴:
http://en.wikipedia.org/wiki/Disassembler
[[رده:اشکالزدایی]]
[[رده:مقالههای ایجاد شده توسط ایجادگر]]
|