آشنایی با برنامه نویسی اسمبلی ویندوز

تاریخ: 1392/05/10 11:35
توسط: MotoMan
امتیاز: ۴
تعداد بازدید: ۴۷۳۸
دیدگاه ها: ۱
برچسب ها: Windows |Assembly |
آشنایی با برنامه نویسی اسمبلی ویندوز
www.dotnettips.info
وحید نصیری
1384 شمسی
339
فارسی

اکثر برنامه نویسان از اسمبلر (و یا زبان اسمبلی) گریزان هستند. دلیل خود را هم سختی درک و کاربرد آن ذکر می‌کنند. در مقابل کسانی هم که به اسمبلی تسلط دارند به شدت مورد تکریم و احترام گروه‌های برنامه نویسان واقع می‌شوند. هدف از انتشار این مطالب طرد این طرز فکر منفی در مورد اسمبلر است.

در ابتدا شاید این سال مطرح شود که اسمبلر چیست؟ اگر بخواهیم ان را بسیار ساده تعریف کنیم، می‌توان گفت اسمبلر زبان پردازشگر است و سطح پایین‌تری از آن را نمی‌توان تصور کرد( البته به جز مقادیر بایتی دستور العمل‌ها  و اینستراکشن ها). هر دستور آن به وسیله برنامه اسمبلر مستقیما به ادادی که توسط پردازشگر قابل اجراست ترجمه می‌شود. مزیت استفاده از اسمبلر بر سایر زبان‌های برنامه نویسی، سرعت است. سرعتی محض، خام و تخفیف نیافته. حتی با بهینه سازی هایی که کامپایلرهای مدرن سایر زبان‌های برنامه نویسی انجام می‌دهند، کد اسمبلری که با دست بهینه سازی شده است؛ بسیار بسیار سریعتر اجرا می‌شود.

امروزه از اسمبلر برای نوشتن هر نوع برنامه ای استفاده نمی‌شود. هرچند می‌تان کل یک برنامه را با اسمبلر نوشت اما با وجود زبان‌های سطوح بالاتری مانند c++ و غیره، شاید انجام این کار نوعی مازوخیسم به نظر آید! و باید در نظر داشت که برای بسیاری از کاربرد‌ها سرعت c++ و یا حتی زیان‌های دات نت قابل قبول هستند. زمانی استفاده از اسمبلر حائز اهمیت خواهد شد که سرعت انجام عملیات جزو موارد بحرانی محسوب گردد. برای مثال در برنامه‌های گرافیکی و اعمال مختلف با بیت مپ ها.


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

کانال تلگرام سایت

گروه تلگرام سایت

like می پسندم
dislike به درد نمی خوره
مطالب مشابه
دیدگاه ها
  • نویسنده: m.a.solhjoo تاریخ: 1395/06/30 12:14 تعداد آرا: ۱

    لطفا کتاب‌های اینگلیسی در این زمینه بزارید که از پایه تا حرفه ای اموزش بدهد. با تشکر
loading...

لطفا منتظر بمانید...