| |

بحث سوم - دستورالعمل ها و برنامه نویسی - نسخه قابل چاپ

تمرین : بحث سوم - دستورالعمل ها و برنامه نویسی
نویسنده: مسئول فنی در
۲۴ بهمن ۱۳۹۲
[ آخرین به روزرسانی در ۲۴ بهمن ۱۳۹۲ ]

سؤال :

3-1-1        میکروپروسسور چگونه برنامه ها را اجرا می کند.دستورالعمل ها به چه شکلی به واحد کنترل آن منتقل می شوند.
3-1-2       زبان ماشین چیست و دستورالعمل ها در این زبان به چه شکلی هستند.
3-1-3       آیا باید یک دستورالعمل به زبان ماشین را برای میکروپروسسور ترجمه کرد.
3-1-4       زبان اسمبلی چیست و دستورالعمل ها در این زبان به چه شکلی هستند.
3-1-5       آیا زبان اسمبلی برای اجرا شدن نیاز به ترجمه دارد.چرا ؟
3-1-6       زبان ماشین و زبان اسمبلی را با هم مقایسه کنید. ( نکات مثبت  و منفی )
3-1-7       برنامه هایی که به زبان های سطح بالا ( مانند C ) نوشته شده اند، چگونه روی میکروپروسسور اجرا می شوند.
3-1-8      چرا علیرغم اینکه غالب میکروپروسسورها زبان اسمبلی مخصوص خود دارند، اما یک زبان سطح بالا می تواند روی میکروپروسسورهای مختلف اجرا شود.
3-1-9       زبان اسمبلی و یک زبان سطح بالا را مقایسه کنید. ( نکات مثبت و منفی )
3-1-10      چرا روش های مختلف آدرس دهی داریم.
3-1-11      چهار روش آدرس دهی را نام برده و عملکرد آن ها را شرح دهید.
3-1-12     چهار روش آدرس دهی را نام برده و از هر کدام دو مثال بزنید.
3-1-13    به چند روش می توان رجیسترهای R16 تا R31 را مقدار داد. با دستورالعمل نشان دهید.
3-1-14    به چند روش می توان رجیسترهای R0 تا R15 را مقدار داد. با دستورالعمل نشان دهید.
3-1-15    حداکثر مقدار جابجایی در دستورالعمل LDD چقدر است. چرا؟
3-1-16     با کدام دستورالعمل می توان محتوای دو رجیستر را به دو رجیستر دیگر منتقل کرد. عملکرد آن را شرح دهید.
3-1-17    فرق دستورالعمل LPM  با ELPM چیست. کاربرد ELPM در کدام میکروکنترلرها است.
3-1-18    عملکرد دستورالعمل های PUSH و POP  را شرح دهید.
3-1-19     فرق دستورالعمل LSR با دستورالعمل ASR  چیست. هرکدام در چه موردی به کار می روند.
3-1-20     فرق دستورالعمل LSR با دستورالعمل  ROR چیست.  عملکرد آن ها را با شکل نشان دهید.
3-1-21     فلگ ها چیستند. چگونه ایجاد می شوند. کاربرد آن ها چیست.
3-1-22    آیا فلگ ها در تمام دستورالعمل ها به روز ( تغییر ) می کنند.
3-1-23   فلگ ها در چه دستورالعمل هایی چک می شوند.
3-1-24   فرق دستورالعمل SUB با دستورالعمل CP چیست.
3-1-25   فرق دستورالعمل NEG با دستورالعمل COM چیست.  کاربرد هر کدام چیست.
3-1-26    فرق چهار نوع دستورالعمل JMP چیست.
3-1-27   فرق دستورالعمل RET با دستورالعمل RETI چیست.  هر کدام در چه موردی استفاده می شوند.
3-1-28   فرق دستورالعمل های BRSH و    BRGE  و    BRPL چیست.  هر کدام در چه موردی استفاده می شوند.

برنامه نویسی حافظه ها و پورت ها :

3-2-1         برنامه ای بنویسید که مقدار 45H را در پورت B بنویسد.
3-2-2         برنامه ای بنویسید که مقدار پورت D  را خوانده و با اضافه کردن یک واحد به پورت A منتقل کنید.
3-2-3        برنامه ای بنویسید که عدد 00000001 را در پورت A به سمت چپ بچرخاند و این کار تکرار شود.
3-2-4        برنامه ای بنویسید که اسم شما را که در حافظه برنامه با حروف کوچک قراردارد به حافظه SRAM با حروف بزرگ منتقل کند.
3-2-5        برنامه ای بنویسید که اسم شما را که در حافظه برنامه تعریف شده است به حافظه SRAM به صورت بر عکس منتقل کند.
3-2-6         برنامه ای بنویسید که تعداد یک های 10 بایت که در حافظه برنامه قراردارد را به دست آورده و در خانه 245H حافظه SRAM قرار دهد.
3-2-7        برنامه ای بنویسید که تعداد 0 به 1 شدن یک کلمه که در حافظه برنامه تعریف شده است را بدست آورده و به پورت C منتقل کند.
3-2-8        برنامه ای بنویسید که عدد 3AH را در خانه 167 حافظه EEPROM بنویسد.
3-2-9         برنامه ای بنویسید که محتوای خانه 167 حافظه EEPROM را خوانده و به خانه 76H حافظه SRAM منتقل کند.
3-2-10       برنامه ای بنویسید که در یک کلمه در حافظه برنامه، تعداد پاترن 110 موجود را پیدا کند و در R16 قراردهد. بدون در نظر گرفتن هم پوشانی پاترن ها.
3-2-11       برنامه ای بنویسید که در یک کلمه در حافظه برنامه، تعداد پاترن 110 موجود را پیدا کند و در R16 قراردهد. با در نظر گرفتن هم پوشانی پاترن ها.
3-2-12      برنامه ای بنویسید که بزرگترین عدد یک بافر 10 بایتی تعریف شده در حافظه برنامه را به دست آورد و در رجیستر R16 قرار دهد. ( اعداد با علامت )
3-2-13      برنامه ای بنویسید که بزرگترین عدد یک بافر 10 بایتی تعریف شده در حافظه برنامه را به دست آورد و در رجیستر R16 قرار دهد. ( اعداد بدون علامت )
3-2-14      برنامه ای بنویسید که بزرگترین و کوچکترین عدد یک بافر 10 بایتی تعریف شده در حافظه برنامه را به دست آورد و در رجیسترهای R16  و  R17 قرار دهد. ( اعداد با علامت )
3-2-15      برنامه ای بنویسید که یک  بافر 10 بایتی تعریف شده در حافظه برنامه را از کوچک به بزرگ مرتب کرده و در حافظه SRAM  قرار دهد. ( اعداد با علامت )
3-2-16      برنامه ای بنویسید که تاخیر حدود 76µs ایجاد کند. ( فرکانس AVR را 8MHz بگیرید.)
3-2-17      برنامه ای بنویسید که تاخیر حدود 76ms ایجاد کند. ( فرکانس AVR را 8MHz بگیرید.)
3-2-18      برنامه ای بنویسید که تاخیر حدود 7s ایجاد کند. ( فرکانس AVR را 8MHz بگیرید.)
3-2-19      برنامه ای بنویسید که مقدار عبارت زیر را به ازای مقدار x که در رجیستر R16 است به دست آورد. و نتیجه را در رجیسترهای R17 و R18 قرار دهد.     Y=45x2 + 132x + 67

 

نظرات کاربران
نظری ارسال نشده است.
نظر بدهید

بازگشت به بالا