'\" t .\" Title: ndisasm .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets vsnapshot .\" Date: 06/28/2026 .\" Manual: The Netwide Assembler Project .\" Source: NASM .\" Language: English .\" .TH "NDISASM" "1" "06/28/2026" "NASM" "The Netwide Assembler Project" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "نام (NAME)" ndisasm \- دیزاسمبلر Netwide، دیزاسمبلر فایل‌های باینری 80x86 .SH "خلاصه دستور (SYNOPSIS)" .sp \fBndisasm\fR [ \fB\-o\fR origin ] [ \fB\-s\fR sync\-point [\&...]] [ \fB\-a\fR | \fB\-i\fR ] [ \fB\-b\fR bits ] [ \fB\-u\fR ] [ \fB\-e\fR hdrlen ] [ \fB\-p\fR vendor ] [ \fB\-k\fR offset,length [\&...]] infile .SH "توضیحات (DESCRIPTION)" .sp دستور \fBndisasm\fR یک فهرست دیزاسمبل از فایل باینری infile تولید کرده و آن را به خروجی استاندارد (stdout) هدایت می‌کند\&. .SH "گزینه‌ها (OPTIONS)" .PP \fB\-h\fR .RS 4 باعث خروج فوری \fBndisasm\fR پس از ارائه خلاصه‌ای از گزینه‌های فراخوانی آن می‌شود\&. .RE .PP \fB\-r\fR|\fB\-v\fR .RS 4 باعث خروج فوری \fBndisasm\fR پس از نمایش شماره نسخه آن می‌شود\&. .RE .PP \fB\-o\fR \fIorigin\fR .RS 4 آدرس بارگذاری فرضی فایل را مشخص می‌کند\&. این گزینه باعث می‌شود \fBndisasm\fR آدرس‌هایی را که در حاشیه سمت چپ فهرست می‌کند، و همچنین آدرس‌های مقصد پرش‌ها و فراخوانی‌های نسبی نسبت به PC را به‌درستی نمایش دهد\&. .RE .PP \fB\-s\fR \fIsync\-point\fR .RS 4 یک آدرس همگام‌سازی را به‌طور دستی مشخص می‌کند، به طوری که \fBndisasm\fR هیچ دستورالعمل ماشینی را که بایت‌های هر دو طرف این آدرس را در بر بگیرد، در خروجی تولید نخواهد کرد\&. در نتیجه، دستورالعملی که از این آدرس آغاز می‌شود به درستی دیزاسمبل خواهد شد\&. .RE .PP \fB\-e\fR \fIhdrlen\fR .RS 4 تعداد بایت‌هایی را که باید پیش از شروع دیزاسمبل از ابتدای فایل نادیده گرفته شوند، مشخص می‌کند\&. این مقدار در محاسبه آفست دیزاسمبل به شمار نمی‌آید: نخستین دستورالعمل \fIدیزاسمبل‌شده\fR به عنوان شروع از آدرس بارگذاری داده‌شده نمایش خواهد یافت\&. .RE .PP \fB\-k\fR \fIoffset,length\fR .RS 4 مشخص می‌کند که به اندازه \fIlength\fR بایت، با شروع از آفست دیزاسمبل \fIoffset\fR، باید بدون تولید هیچ‌گونه خروجی نادیده گرفته شود\&. بایت‌های نادیده‌گرفته‌شده همچنان در محاسبه آفست دیزاسمبل به شمار می‌آیند\&. .RE .PP \fB\-a\fR|\fB\-i\fR .RS 4 حالت همگام‌سازی خودکار (یا هوشمند) را فعال می‌کند، که در آن \fBndisasm\fR با بررسی آدرس‌های مقصد پرش‌ها و فراخوانی‌های نسبی که دیزاسمبل می‌کند، تلاش می‌کند مکان همگام‌سازی را حدس بزند\&. .RE .PP \fB\-b\fR \fIbits\fR .RS 4 حالت ۱۶، ۳۲ یا ۶۴ بیتی را تعیین می‌کند\&. حالت پیش‌فرض ۱۶ بیتی است\&. .RE .PP \fB\-u\fR .RS 4 حالت ۳۲ بیتی را مشخص می‌کند، به شیوه‌ای فشرده‌تر از به‌کارگیری \(oq\-b 32\(cq\&. .RE .PP \fB\-p\fR \fIvendor\fR .RS 4 در صورت بروز تداخل، دستورالعمل‌های تعریف‌شده توسط \fIvendor\fR را ترجیح می‌دهد\&. نام‌های شناخته‌شده برای \fIvendor\fR شامل \fBintel\fR، \fBamd\fR، \fBcyrix\fR و \fBidt\fR هستند\&. مقدار پیش‌فرض \fBintel\fR است\&. .RE .SH "محدودیت‌ها (RESTRICTIONS)" .sp دستور \fBndisasm\fR تنها فایل‌های باینری را دیزاسمبل می‌کند: این ابزار هیچ شناختی از اطلاعات سرآیند موجود در فایل‌های شیء یا فایل‌های اجرایی ندارد\&. اگر می‌خواهید یک فایل شیء را دیزاسمبل کنید، احتمالاً باید از \fBobjdump\fR(1) استفاده کنید\&. .sp حالت همگام‌سازی خودکار (Auto\-sync) لزوماً تمام مشکلات همگام‌سازی شما را حل نخواهد کرد: یک نشانگر همگام‌سازی تنها در صورتی می‌تواند به‌طور خودکار قرار گیرد که دستور پرش یا فراخوانی \fIپیش از\fR اینکه \fBndisasm\fR واقعاً آن بخش از کد را دیزاسمبل کند، به آن ارجاع داده باشد\&. همچنین اگر پرش‌ها یا فراخوانی‌های کاذب در اثر دیزاسمبل داده‌های غیر از کد ماشین رخ دهد، نشانگرهای همگام‌سازی ممکن است در مکان‌های عجیبی قرار گیرند\&. در صورت نیاز می‌توانید همگام‌سازی خودکار را خاموش کرده و به شیوه دستی بازگردید\&. .SH "همچنین ببینید (SEE ALSO)" .sp \fBobjdump\fR(1)