تالار گفتگوی کیش تک/ kishtech forum
  • سردر
  • جستجو
  • فهرست اعضا
  • سالنامه
  • راهنما
درود مهمان گرامی! ورود ثبت‌نام
ورود
نام کاربری:
گذرواژه‌:
گذرواژه‌تان را فراموش کرده‌اید؟
 
تالار گفتگوی کیش تک/ kishtech forum › پردیس فناوری کیش › مهندسی الکترونیک و الکتروتکنیک v
« قبلی 1 … 33 34 35 36 37 بعدی »

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

امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
حالت موضوعی
برنامه نویسی اسمبلی برای AVR
saedi1361 آفلاین
عضو جوان
**
ارسال‌ها: 22
موضوع‌ها: 22
تاریخ عضویت: Dec 2019
اعتبار: 0
#1
14-01-2020, 02:25 AM
معرفی چند دستور مهم زبان اسمبلی

۱-دستور INC

فرمت کلی این دستور اسمبلی به این شکل است :  INC  Rd
این دستور محتوای Rd را یک واحد افزایش می دهد.
مثال:

LDI  R16,0   ;R16=0
INC  R16     ;R16=1

۲-دستور DEC

فرمت کلی این دستور اسمبلی به این شکل است:  DEC  Rd

بعد از اجرای این دستور محتوای Rd یک واحد کاهش می یابد.
مثال:

LDI  R16,15   ;R16=15
DEC  R16      ;R16=14

لازم به ذکر است که دو دستور بالا اثری بر روی پرچم های وضعیت ندارند.


۳-دستور SUB

فرمت کلی این دستور اسمبلی به این شکل است :  SUB  Rd,Rr
این دستور مقدار Rr را از Rd کم کرده و نتیجه را در Rd می گذارد.همچنین این دستور بر روی پرچم های وضعیت اثر می گذارد.
مثال:

LDI  R16,60    ;R16=60
LDI  R17,70    ;R16=70
SUB  R17,R16   ;R17=10

۴- دستور COM

فرمت کلی این دستور اسمبلی به این شکل است:  COM  Rd

این دستور مکمل(معکوس) Rd را محاسبه کرده و نتیجه را در Rd قرار می دهد.
مثال:

LDI  R16,0xAA   ;R16=0xAA
COM  R16        ;R16=0x55

حال که با بعضی از دستورات زبان اسمبلی آشنا شدید به توضیح در مورد انواع داده در AVR و مثال هایی با دستورات گفته شده می پردازیم.

همان طور که می دانید AVR فقط داده های هشت بیتی را پشتیبانی می کند و برای پردازش داده های بیش از هشت بیت باید آنها را به اجزای ۸ بیتی خرد کنیم.داده هایی که توسط AVR استفاده می شوند می نوانند مثبت یا منفی ویا زوج و فرد باشند باشند.

اگر پرارزش ترین بیت (D7) یک باشد عدد منفی، و اگر صفر باشد عدد مثبت است.همچنین اگر کم ارزشترین بیت(D0) صفر باشد عدد زوج و اگر یک باشد عدد فرد است.

مثال: عدد مثبت و زوج ۰۱۱۱۱۰۱۰-عدد مثبت و فرد ۱۱۰۰۰۱۱۰- عدد منفی و زوج ۱۱۰۰۱۱۱۰- منفی و فرد۱۱۰۰۱۱۱۱
اعداد را به چهار فرمت دودویی، ده دهی،مبنای شانزده و اسکی می توان در برنامه نویسی اسمبلی به کار برد.به مثال زیر توجه کنید:

LDI  R16,0x30
LDI  R16,$30
LDI  R16,48
LDI  R16,0B00110000
'LDI  R16,'0

در دستور دوم علامت دلار روش دیگری برای نمایش اعداد بر مبنای ۱۶ می باشد.

در دستور سوم فرمت دهدهی  و در دستور چهارم فرمت باینری  ۰x30نوشته شده.
در دستور آخر کد اسکی عدد صفر که همان عدد ۰x30 است در ثبات R16 قرار می گیرد چون داخل علامت نقل قول قرار گرفته.پس در هر ۵ دستور یک مقدار مشابه وارد ثبات R16 می شود.
ارسال‌ها
پاسخ
« قدیمی‌تر | جدیدتر »


موضوع‌های مشابه…
موضوع نویسنده پاسخ بازدید آخرین ارسال
  دستگاه برای بسته بندی packationmachinery 1 1,997 31-05-2023, 11:34 AM
آخرین ارسال: farsibloger
  چه زمانی برای تعمیر کرکره برقی اقدام کنیم؟ arezu3 0 6,344 20-04-2022, 02:04 PM
آخرین ارسال: arezu3
  برنامه امتحانات نهایی دی 1400 moshaveranebartar 0 8,932 05-12-2021, 04:08 AM
آخرین ارسال: moshaveranebartar
  مدارک لازم برای ثبت نام در آزمون نظام مهندسی heyvagp1 0 2,348 01-11-2021, 12:19 PM
آخرین ارسال: heyvagp1
  مدارک لازم برای ثبت نام تیزهوشان heyvagp1 0 529 01-07-2021, 11:11 AM
آخرین ارسال: heyvagp1
  مدارک لازم برای انصراف از دانشگاه heyvagp1 0 512 28-06-2021, 12:06 PM
آخرین ارسال: heyvagp1
  مدارک مورد نیاز برای ثبت نام آزمون قضاوت heyvagp1 0 510 23-06-2021, 03:34 PM
آخرین ارسال: heyvagp1
  شرایط برای تحصیل در المان یا کانادا asgari1105 0 750 06-02-2021, 01:09 AM
آخرین ارسال: asgari1105
Photo برنامه بازار asmaylpwrmyrzayb@gmail.com 0 430 23-12-2020, 04:09 PM
آخرین ارسال: asmaylpwrmyrzayb@gmail.com
  نکات طلایی برای خرید کرکره برقی و دلایل خرید آن ashkantorabi 1 856 16-05-2020, 04:23 PM
آخرین ارسال: yaraplas

  • مشاهده‌ی نسخه‌ی قابل چاپ
پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان
  • تیم انجمن
  • صفحه‌ی تماس
  • تالار کیش تک / kishtech forum
  • بازگشت به بالا
  • بایگانی
  • نشانه‌گذاری تمامی انجمن‌ها به عنوان خوانده شده
  • پیوند سایتی RSS
زمان کنونی: 18-06-2025، 12:13 AM Persian Translation by MyBBIran.com - Ver: 6.5
Powered by MyBB, © 2002-2025 MyBB Group.