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

  • شنبه ۲۱ آذر ۱۳۹۴
  • بازدید 2,514 نفر
  • 1 امتیاز2 امتیاز3 امتیاز4 امتیاز5 امتیاز (43 امتیاز از 10 رای)
    Loading...

kind data in assembly 12574 تصویر

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

در این بخش از آموزش زبان اسمبلی برای شما کاربران عزیز آموزش انواع داده ها در زبان اسمبلی Assembly را آماده کرده ایم که می توانید در ادامه آن را مشاهده کنید.

در برخی مواقع نیاز است در زبان اسمبلی مقداری را در جای ذخیره کنید و بعدا از آن استفاده کنید در چنین مواقعی باید در قسمت سگمنت داده متغیری تعریف کنید تا این مقدار در آن متغیر قرار بگیرد. این مقادیر ممکن است رشته ای یا عددی باشند. ثابت های عددی می توانند در مبنای ۲ یا مبنای ۸ یا مبنای ۱۰ و یا مبنای ۱۶ تعریف شوند. در حالت پیش فرض عددهای نوشته شده، در مبنای ۱۰ درنظر گرفته می شوند ولی اگر بخواهید در مبناهای دیگر این اعداد را بنویسید برای مبنای ۲ از حرف b برای مبنای ۸ از حرف o یا q و برای مبنای ۱۶ از حرف h استفاده می کنیم.

توضیحات بیشتر آموزش انواع داده ها در زبان اسمبلی Assembly را در ادامه مطلب می توانید مشاهده کنید.

در زبان اسمبلی ۳ نوع داده DB,DW,DD می توانیم تعریف کنیم که در ادامه به توضیحات هر کدام از این انواع داده ها در زبان اسمبلی می پردازیم.

تعریف داده با دستور DB:

شناسه   DB     مقدار

دستور DB یا Define Byte برای تعریف داده های ۱ بایتی مورد استفاده قرار می گیرد. مقادیری که این نوع داده می تواند به خود بگیرد به این صورت است که اگر عدد بدون علامت باشد بین ۰ تا ۲۵۵ خواهد بود. اعداد منفی ۱۲۸- تا ۱- نیز در یک بایت ذخیره می شوند، اما به اعداد منفی ۲۵۵- تا ۱۲۹- یک کلمه اختصاص می یابد ولی بایت باارزش آن نادیده گرفته خواهد شد. در دستور DB در زبان اسمبلی می توان مقادیر کاراکتری و رشته ای را نیز تعریف کرد که برای این منظور می توان از علامت نقل قول یکانی یا علامت نقل قول دوتایی استفاده کرد. به دستورات زیر توجه کنید.

P1   db   ۰                   ;value is 0

P2   db     -۱۲۸۰           ;value is 80

P3   db   ۲۵۵                ;value is FF

P4   db     +۹۱              ;value is 5B

P5  db     ۰۱۱۱۱۱۰۱B     ;value is 7D

P6   db       ۱,۵,۲            ;value is   ۱ , ۵ , ۲

P7  db     ‘a’                  ;value is 61

P8  db     “ab”               ;value is 61 , 62

تعریف داده با دستور DW:

شناسه   DW     مقدار

دستور DW یا Define Word برای تعریف داده های یک کلمه ای یا همان ۲ بایتی مورد استفاده قرار می گیرد. مقادیری که این نوع داده می تواند به خود بگیرد به این صورت است که اگر عدد بدون علامت باشد بین ۰ تا ۶۵۵۳۵ خواهد بود. اعداد منفی ۳۲۷۶۸- تا ۱- نیز در یک کلمه ذخیره می شوند، اما به اعداد منفی ۶۵۵۳۵- تا ۳۲۷۶۹- چهار بایت اختصاص می یابد ولی دو بایت باارزش آن نادیده گرفته خواهد شد. در دستور DW در زبان اسمبلی می توان مقادیر کاراکتری و رشته ای را نیز تعریف کرد که در این صورت کاراکتر مورد نظر در بایت کم ارزش قرار می گیرد و بایت با ارزش آن ۰ خواهد شد برای رشته ها هم رشته مورد نظر حتما باید دو کاراکتر باشد. به دستورات زیر توجه کنید.

W1   dw   -۳۲۷۶۸              ;value is 8000

W2   dw     ۶۵۵۳۵             ;value is FFFF

W3   dw   -۱۰۰۰۰              ;value is D8F0

W4   dw     ۴۰۰                ;value is 190

W5  dw     ‘a’                    ;value is 0061

W6  dw     “ab”                  ;value is 6261

تعریف داده با دستور DD:

شناسه   DD     مقدار

دستور DD یا Define Double word برای تعریف داده های ۴ بایتی مورد استفاده قرار می گیرد. مقادیری که این نوع داده می تواند به خود بگیرد بین ۰ تا ۰FFFFFFH خواهد بود. به دستورات زیر توجه کنید.

D1   dd   ۲۱۴۷۴۸۳     ;value is C49B

مثال کاملی از آموزش انواع داده ها در زبان اسمبلی:

stkseg segment stack

     db 32 dup(“stack”)

stkseg ends

dataseg segment para ‘data’

P1   db   ۰                  ;value is 0

P2   db   -۱۲۸              ;value is 80

P3   db   ۲۵۵               ;value is FF

P4   db   +۹۱               ;value is 5B

P5   db   ۰۱۱۱۱۱۰۱B     ;value is 7D

P6   db   ۱,۵,۲             ;value is   ۱ , ۵ , ۲

P7   db   ‘a’                 ;value is 61

P8   db   “ab”              ;value is 61 , 62

W1   dw   -۳۲۷۶۸        ;value is 8000

W2   dw   ۶۵۵۳۵         ;value is FFFF

W3   dw   -۱۰۰۰۰        ;value is D8F0

W4   dw   ۴۰۰            ;value is 190

W5   dw   ‘a’              ;value is 0061

W6   dw   “ab”           ;value is 6261

D1   dd   ۲۱۴۷۴۸۳      ;value is C49B

dataseg ends

codeseg segment para ‘code’

   main proc far

       assume ds:dataseg,cs:codeseg,ss:stkseg

   main endp

codeseg ends

   end main


مشاهده ویدئو در این باره

خوشحال خواهیم شد اگر نظر خودتون رو درباره این مطلب ثبت کنید

خطا!دکمه ریفریش را بزنید
  1. تصویر آواتار کاربر 0
    وحید شنبه , 31 تیر

    عالی بود . زنده باد اسمبلی

لیســــــــت پــــــــروژه های انتشــــــــار نشده ( 22 موضوع )

مشاهده لیست کامل
مشاهده لیست کامل
مشاهده لیست کامل
مشاهده لیست کامل
socket programing آموزش برنامه نویسی آموزش سی شارپ اینترنت اشیا بازی تحت شبکه بازی تحت شبکه به زبان سی شارپ برنامه تحت شبکه با سی شارپ برنامه نویسی ترجمه مقاله ترجمه مقاله شبکه دانلود رایگان پروژه های دانشجویی دانلود سورس برنامه دانلود سورس رایگان دانلود نرم افزار دانلود پروژه دانشجویی دانلود پروژه رایگان دانلود پروژه های دانشجویی دانلود کتاب دانلود کتاب آموزشی دانلود کتاب اموزشی سورس رایگان سورس کد بازی تحت شبکه سورس کد بازی تحت شبکه با C# سورس کد بازی تحت شبکه چند نفره سوکت پروگرمین شبکه SDN شبیه سازی با نرم افزار R نحوه نوشتن برنامه تحت شبکه نرم افزار Rstudio پروژه arena پروژه matlab پروژه ns2 پروژه opnet پروژه ارنا پروژه سیمولینک matlab پروژه شبکه عصبی پروژه مهندسی صنایع پروژه مهندسی صنایع با ارنا پروژه های آماده با OpenGL پروژه های آماده با OpenGL در سی پلاس پلاس پروژه های آماده با ارنا پروژه های آماده برای درس گرافیک کامپیوتری پروژه هوش مصنوعی پروژه پردازش تصویر matlab پروژه پردازش سیگنال matlab