برنامه نویسی اسمبلی

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

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

نمايش داده ها

واحدهای اطلاعاتی
هر رقم در يک عدد باينری يک بيت (bit) ناميده می شود. بيت کوچکترين واحد اطلاعاتی در کامپيوتر است.
نوع بزرگتر ذخيره سازی يک کلمه (word) است که روی پردازنده های اينتل 2 بايت (16 بيت) است. يک کلمه طول پيش فرض داده است که توسط طراح پردازنده انتخاب شده است و منعکس کننده برخی نکات سخت افزاری نظير گذرگاه های درونی و بيرونی است. کاميپوترهای شخصی اوليه با پردازنده های اينتل دارای عملوندهای 16 بيتی بودند به همين دليل کلمه به صورت 16 بيتی تعريف شد. در پردازنده های ديگر طول کلمه الزاما 2 بايت نيست.

نمايش اعداد صحيح (Integer)

اعداد صحيح باينری به دو شکل ديده می شوند:
1. اعداد صحيح بدون علامت (unsigned Integer) که شامل اعداد صحيح غير منفی هستند.
2. اعداد صحيح علامت دار (signed Integer) که می توانند مثبت يا منفی باشند.

برنامه نویسی اسمبلی
برنامه نویسی اسمبلی

روش نمايش مکمل 2

دو روش اول در کامپيوترهای اوليه به کار می رفتند. کامپيوترهای امروزی روش سوم به نام نمايش مکمل 2 را استفاده می کنند. مکمل 2 يک عدد در دو مرحله بدست می آيد:

1- پيداکردن مکمل 1 عدد
2- اضافه کردن 1 واحد به نتيجه مرحله اول

کدگذاري ASCII

کد گذاری ASCII (American Standard Code for Information Interchange) به حروف، ارقام، علائم و کاراکترهای مختلف يک عدد باينری 7 بيتی نسبت می دهد و هشتمين بيت را 0 درنظر می گيرد. به اين صورت هر کاراکتر يک بايت را اشغال می کند. اين روش برای نمايش اعداد مناسب نيست، چون در فرمت باينری يک بايت اعداد 0 تا 255 را نمايش می دهد.

ساختمان کامپيوتر

اجزای اصلی سخت افزار يک ريز کامپيوتر شامل:
• پردازنده مرکزی
• حافظه
• صفحه کليد به عنوان ورودی
• صفحه نمايش به عنوان خروجی
• يک يا چند ديسک درايو برای ذخيره برنامه ها و داده ها

برنامه Debug

برنامه Debug ابزاری جهت اشکالزدائی، اجرا و تغيير برنامه ها می باشد. اين برنامه امکان نوشتن و اجرای برنامه های کوتاه اسمبلی، نمايش و تغيير محتوای حافظه و ثبات ها، تهيه ليست اسمبلی از يک برنامه اجرائی و دسترسی به پورت ها را می دهد.

ماکرو

ماکرو (macro) نام مخففی برای مجموعه ای از دستورالعمل ها، راهنماها يا ماکروهای ديگر است که يکبار نوشته می شود و به هر تعداد دفعات لازم قابل استفاده است.

پشته

پشته (stack) ناحيه ای از حافظه اصلی است که به صورت LIFO (last-in-first-out) سازماندهی شده است. يعنی آخرين داده ای که وارد آن می شود اولين داده ای است که از آن خارج می شود.

وقفه ها

هر رويدادی که باعث شود CPU اجرای عادی يک برنامه را قطع کند وقفه ناميده می شود. يک برنامه نويس اسمبلی با صدور وقفه های نرم افزاری می تواند به طور موثری با دستگاه های جانبی ارتباط برقرار کند.