1 / 44

مجموعه دستورالعمل 8051

مجموعه دستورالعمل 8051. حسین منتظری کردی دانشکده مهندسی برق و کامپیوتر دانشگاه صنعتی نوشیروانی بابل پاییز 91. دستورات حسابی: 24 کدعملیاتی حسابی در گروه‌های زیر دسته‌بندی شده‌اند: انواع آدرس‌دهی برای این دستورات شامل: ثباتی، مستقیم، غیرمستقیم، و بیواسطه

Download Presentation

مجموعه دستورالعمل 8051

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. مجموعه دستورالعمل 8051 حسین منتظری کردی دانشکده مهندسی برق و کامپیوتر دانشگاه صنعتی نوشیروانی بابل پاییز 91

  2. دستورات حسابی: • 24 کدعملیاتی حسابی در گروه‌های زیر دسته‌بندی شده‌اند: • انواع آدرس‌دهی برای این دستورات شامل: ثباتی، مستقیم، غیرمستقیم، و بیواسطه • 8051 دارای 4 پرچم محاسباتی؛ بیت نقلی (C)، نیم بیت نقلی (AC)، سرریز حسابی (OV)، و بیت توازن (P) • سه پرچم C، AC، و OV اصلاح توسط دستورات حسابی

  3. آخرین دستور تاثیرگذار روی پرچم تعیین‌کننده مقدار نهایی پرچم • تاثیرپذیری پرچم توازن با هر دستور جاری، P= 1 اگر تعداد 1 های انباره فرد باشد و در غیر اینصورت P= 0 خواهدبود.

  4. دستورات جمع • ADD A, <src-byte> • افزودن یک بایت از مبداء به انباره و قراردادن نتیجه در انباره، نشاندارشدن C و AC اگر یک بیت خروجی از بیت‌های 7 یا 3 وجود داشته‌باشد. بهنگام جمع بدون علامت C مبین یک سرریز می‌باشد. • نشاندارشدن OV درصورت خارج‌شدن رقم نقل از بیت 6 و عدم خروج از بیت 7؛ یا خروج از بیت 7 و عدم خروج از بیت 6؛ OV در جمع علامتدار بیانگر تولید حاصل‌منفی از جمع دو عدد مثبت و حاصل مثبت از جمع دو عدد منفی • مثال: انباره حاوی C3H و ثبات R0 حاوی AAH می‌باشد، اجرای دستور زیر موجب تغییر مقدار انباره به 6DH و پرچم‌ها بصورت زیر می‌شود: • ADD A, R0 • C= 1, AC= 0, OV= 1 • P= 1

  5. دستور جمع با رقم نقلی • ADDC A, <src-byte> • افزودن یک‌بایت از مبداء بهمراه بیت‌نقلی به انباره و قراردادن نتیجه در انباره، نشاندارشدن C و AC اگر یک بیت خروجی از بیت‌های 7 یا 3 وجود داشته‌باشد. بهنگام جمع بدون علامت C مبین یک سرریز می‌باشد. • نشاندارشدن OV درصورت خارج‌شدن رقم نقل از بیت 6 و عدم خروج از بیت 7؛ یا خروج از بیت 7 و عدم خروج از بیت 6؛ OV در جمع علامتدار بیانگر تولید حاصل‌منفی از جمع دو عدد مثبت و حاصل مثبت از جمع دو عدد منفی • مثال: انباره حاوی C3H و ثبات R0 حاوی AAH می‌باشد، همچنین بیت‌نقلی از دستور قبلی نشاندار شده‌است. اجرای دستور زیر موجب تغییر مقدار انباره به 6EH و پرچم‌ها بصورت زیر می‌شود: • ADDC A, R0 • C= 1, AC= 0, OV= 1, P= 1

  6. دستورات تفریق (با بیت قرضی) • SUBB A, <src-byte> • تفریق یک بایت از مبداء از انباره و قراردادن نتیجه در انباره، نشاندارشدن C (بیت‌قرضی) اگر یک بیت قرضی برای بیت 7 نیاز باشد، و اگر C از قبل نشاندار باشد، آنگاه یک بیت قرضی برای عمل تفریق لحاظ می‌شود. • نشاندارشدن AC اگر یک بیت قرضی برای بیت 3 نیاز ‌باشد. نشاندارشدن OV اگر یک بیت قرضی برای بیت 6 نه 7، و یا بیت 7 نه 6 نیاز باشد.

  7. دستورات یکی اضافه‌کن و یکی کم‌کن • INC <byte> • یک واحد به بایت متغیر اضافه‌کن، هیچ پرچمی اثر نمی‌پذیرد.

  8. DEC <byte> • یک واحد از بایت متغیر کم‌کن، هیچ پرچمی اثر نمی‌پذیرد.

  9. INC DPTR • یک واحد به متغیر 16 بیتی اضافه‌کن، هیچ پرچمی اثر نمی‌پذیرد.

  10. دستورات ضرب و تقسیم • MUL AB • ضرب دو عدد بدون علامت 8 بیتی انباره و ثبات B، و قراردادن بایت پایین نتیجه در انباره و بایت بالا در ثبات B؛ نشاندارشدن OV اگر جواب بیش از یک بایت باشد. پرچم نقلی همیشه پاک می‌شود.

  11. DIV AB • تقسیم دو عدد بدون علامت 8 بیتی انباره بر ثبات B، و قراردادن خارج‌قسمت در انباره و باقیمانده در ثبات B؛ بازنشان‌شدن C و OV؛ نشاندارشدن OV اگر B= 00H باشد و A و B در اینحالت تعریف نشده می‌باشند.

  12. تنظیم دهدهی • DA A • تنظیم‌دهدهی انباره برای عمل جمع دو عدد 8 بیتی BCD و تولید دو رقم 4 بیتی معتبر در شکل BCD

  13. اگر بیت 0 تا 3 انباره بزرگتر از 9 باشد و یا اگر AC یک باشد، آنگاه 06H به انباره جهت تولید رقم BCD صحیح در نیم بایت پایین اضافه می‌شود. • نشاندارشدن C اگر یک بیت نقلی از 4 بیت مرتبه پایین به 4 بیت مرتبه بالا منتشر شود، در غیر اینصورت C هرگز پاک نمی‌شود. • درصورت نشاندارشدن C بعداز تنظیم نیم بایت پایین، و یا بزرگتر بودن نیم بایت بالا از 9 آنگاه 60H به نیم بایت بالا افزوده می‌شود. • تنظیم دوباره C با این جمع درصورت خروج بیت نقلی، وگرنه این پرچم پاک نمی‌شود. پرچم C بیانگر بزرگتربودن جواب جمع دو عدد اولیه BCD از 100 و پرچم OV تاثیر نمی‌پذیرید. • بسته به مقدار اولیه انباره یا PSW، اضافه‌شدن 00H، 06H، 60H، و یا 66H به انباره • این دستور موجب تبدیل عدد هگزادسیمال به BCD نمی‌شود. • این دستور قابل اعمال به تفریق BCD نمی‌باشد.

  14. دستورات منطقی:

  15. دستورات منطقی شامل AND، OR، XOR، NOT، و دستورات چرخش • 4 آدرس‌دهی: ثباتی، مستقیم، غیرمستقیم، و بیواسطه • عدم تاثیرگذاری روی پرچم‌ها بجز دستورات مبتنی‌بر پردازش بیت • ANL <dest-byte>, <src-byte> • انجام AND بیت به بیت بین مبداء و مقصد و ذخیره جواب در مقصد

  16. ORL <dest-byte>, <src-byte> • انجام OR بیت به بیت بین مبداء و مقصد و ذخیره جواب در مقصد

  17. XRL <dest-byte>, <src-byte> • انجام XOR بیت به بیت بین مبداء و مقصد و ذخیره جواب در مقصد

  18. CPL A CLR A

  19. دستورات چرخش: • RL A • 8 بیت انباره یک بیت به چپ می‌چرخد، بیت 7 در جای بیت صفر قرار می‌گیرد. هیچ پرچمی تاثیر نمی‌پذیرد.

  20. RLC A • 8 بیت انباره و بیت نقلی با هم یک بیت به چپ می‌چرخند، بیت 7 در جای بیت نقلی و بیت نقلی جای بیت صفر قرار می‌گیرد. بغیر از بیت نقلی هیچ پرچمی تاثیر نمی‌پذیرد.

  21. RR A • 8 بیت انباره یک بیت به راست می‌چرخد، بیت صفر در جای بیت 7 قرار می‌گیرد. هیچ پرچمی تاثیر نمی‌پذیرد.

  22. RRC A • 8 بیت انباره و بیت نقلی با هم یک بیت به راست می‌چرخند، بیت صفر در جای بیت نقلی و بیت نقلی جای بیت 7 قرار می‌گیرد. بغیر از بیت نقلی هیچ پرچمی تاثیر نمی‌پذیرد.

  23. SWAP A • 4 بیت مرتبه پایین و بالای انباره با هم تعویض می‌شوند. هیچ پرچمی تاثیر نمی‌پذیرد. • دستورات پردازش بیت: • این دستورات از بیت نقلی بعنوان انباره تک بیت استفاده می‌کنند. • مبداء و مقصد در این دستورات فقط مکان بیت‌های آدرس‌پذیر می‌باشند. • هیچ پرچمی بجز بیت نقلی تاثیر نمی‌پذیرد، مگر اینکه آن پرچم آدرس داده شود.

More Related