اپلیکیشن اندرویدی فلشکارت آموزشی برنامهنویسی PL/M: اصول توسعه نرمافزار برای میکروکامپیوترها و سیستمهای نهفته
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره برنامهنویسی PL/M: اصول توسعه نرمافزار برای میکروکامپیوترها و سیستمهای نهفته
موضوع کلی: توسعه نرمافزار برای سختافزار
موضوع میانی: زبانهای برنامهنویسی سطح بالا برای سیستمهای میکروکامپیوتری
📋 سرفصلهای دوره
- 1. بخش ۱: مقدمه و مبانی PL/M
- 2. مقدمهای بر میکروکامپیوترها و سیستمهای نهفته
- 3. چرا زبانهای سطح بالا برای سختافزار؟
- 4. تاریخچه و فلسفه زبان PL/M
- 5. مقایسه PL/M با زبان اسمبلی
- 6. محیط توسعه و ابزارهای مورد نیاز (کامپایلر، لینکر، لوکیتور)
- 7. ساختار یک برنامه ساده در PL/M
- 8. اولین برنامه: چشمک زدن یک LED
- 9. متغیرها و اعلانها (DECLARE)
- 10. انواع دادههای اصلی: BYTE, ADDRESS, WORD
- 11. کامنتگذاری و خوانایی کد
- 12. ثابتها و تعریف آنها با LITERALLY
- 13. عبارات و عملگرهای حسابی
- 14. عملگرهای رابطهای و منطقی
- 15. اولویت عملگرها
- 16. بخش ۲: ساختارهای کنترل برنامه
- 17. کنترل جریان برنامه: مقدمه
- 18. دستور شرطی IF-THEN
- 19. دستور شرطی IF-THEN-ELSE
- 20. شرطهای تودرتو (Nested IF)
- 21. حلقه DO-WHILE
- 22. حلقه تکرار شمردهشده (Iterative DO)
- 23. ترکیب حلقهها و شرطها
- 24. دستور DO CASE برای انتخاب چندگانه
- 25. خروج از حلقهها و بلوکها
- 26. دستور GOTO و کاربردهای محدود آن
- 27. برچسبها (Labels)
- 28. ساختارهای بیپایان (Infinite Loops) برای سیستمهای نهفته
- 29. نمونه عملی: خواندن وضعیت یک کلید در حلقه
- 30. طراحی الگوریتمهای ساده با ساختارهای کنترلی
- 31. بخش ۳: رویهها و توابع (Procedures)
- 32. مفهوم برنامهنویسی ماژولار
- 33. تعریف و فراخوانی یک رویه ساده (Procedure)
- 34. بلوکهای DO/END و حوزه دید متغیرها
- 35. متغیرهای محلی و سراسری
- 36. ارسال پارامتر به رویهها (Passing Parameters)
- 37. رویههای نوعدار (Typed Procedures) و بازگرداندن مقدار (RETURN)
- 38. مفهوم پشته (Stack) و نحوه کارکرد فراخوانی رویهها
- 39. فراخوانیهای تودرتو
- 40. رویههای بازگشتی (Recursive Procedures)
- 41. رویههای از پیش تعریفشده (Built-in Procedures)
- 42. مقدمهای بر ماژولهای جداگانه: PUBLIC و EXTERNAL
- 43. اصول طراحی رویههای کارآمد
- 44. نمونه عملی: ایجاد یک رویه برای تأخیر زمانی (Delay)
- 45. بخش: آرایهها، ساختارها و اشارهگرها
- 46. مفهوم آرایه (Array) و کاربردهای آن
- 47. تعریف و استفاده از آرایههای یکبعدی
- 48. دسترسی به عناصر آرایه
- 49. مقداردهی اولیه آرایهها با INITIAL
- 50. آرایههای چندبعدی
- 51. مفهوم ساختار (STRUCTURE) برای دادههای ترکیبی
- 52. تعریف و استفاده از ساختارها
- 53. دسترسی به اعضای یک ساختار
- 54. آرایهای از ساختارها
- 55. مقدمهای بر اشارهگرها و متغیرهای مبتنی بر آدرس (BASED)
- 56. کار با آدرسها و حافظه به صورت مستقیم
- 57. استفاده از اشارهگرها برای دسترسی به آرایهها و ساختارها
- 58. عملگر مکانیابی (@)
- 59. نمونه عملی: مدیریت یک بافر داده با آرایه
- 60. بخش ۵: عملیات بیتی و کار با سختافزار
- 61. اهمیت عملیات بیتی در برنامهنویسی نهفته
- 62. عملگرهای بیتی: AND, OR, XOR, NOT
- 63. عملیات شیفت و چرخش: SHL, SHR, ROL, ROR
- 64. کاربردهای عملی: ماسک کردن (Masking) و تنظیم بیتها
- 65. پورتهای ورودی/خروجی (I/O Ports)
- 66. دستورات INPUT و OUTPUT برای دسترسی به پورتها
- 67. ورودی/خروجی حافظهنگاشت (Memory-Mapped I/O)
- 68. مفهوم وقفهها (Interrupts)
- 69. فعال و غیرفعال کردن وقفهها: ENABLE و DISABLE
- 70. نوشتن رویههای وقفه (Interrupt Service Routines)
- 71. نمونه عملی: نوشتن درایور ساده برای پورت سریال (UART)
- 72. کار با تایمرها و شمارندهها
- 73. کنترل مستقیم سختافزار از طریق PL/M
- 74. بخش ۶: کامپایلر، لینکر و فرآیند ساخت
- 75. فرآیند تبدیل کد PL/M به کد ماشین
- 76. آشنایی با کامپایلر PL/M و کنترلهای آن
- 77. فایلهای خروجی کامپایلر: فایل شیء (Object File)
- 78. مفهوم لینکر (Linker) و پیوند ماژولها
- 79. کتابخانهها (Libraries) و نحوه استفاده از آنها
- 80. آشنایی با لوکیتور (Locator) و نقش آن
- 81. نقشه حافظه (Memory Map) و تخصیص آدرس
- 82. قرار دادن کد و داده در حافظه ROM و RAM
- 83. فرآیند ساخت یک برنامه قابل اجرا برای میکروکامپیوتر
- 84. استراتژیهای اشکالزدایی (Debugging)
- 85. استفاده از شبیهسازها و دیباگرهای سختافزاری
- 86. بخش ۷: مباحث پیشرفته و یکپارچهسازی
- 87. یکپارچهسازی PL/M با زبان اسمبلی
- 88. فراخوانی رویههای اسمبلی از درون PL/M
- 89. فراخوانی رویههای PL/M از درون اسمبلی
- 90. قراردادهای فراخوانی (Calling Conventions)
- 91. بهینهسازی کد برای سرعت
- 92. بهینهسازی کد برای اندازه (Code Size)
- 93. مدیریت حافظه در سیستمهای با منابع محدود
- 94. طراحی سیستمهای بیدرنگ (Real-Time) با PL/M
- 95. نکات برنامهنویسی قابل اعتماد و ایمن
- 96. مفاهیم اولیه یک سیستمعامل ساده (Monitor Program)
- 97. پردازش رشتهها و دادههای متنی
- 98. بخش ۸: پروژههای کاربردی
- 99. پروژه ۱: ساخت یک برنامه مانیتور ساده از طریق پورت سریال
- 100. پروژه ۲: کنترل یک نمایشگر هفت قسمتی (7-Segment)
این اپلیکیشن فارسی برای یادگیری و مرور محتوای آموزشی از طریق فلشکارت طراحی شده است. کارتها را یکییکی مرور کنید، پاسخ پرسشها را به یاد بیاورید و نتیجه هر پاسخ را ثبت کنید. محتوای دوره پس از نصب درون برنامه در دسترس است تا برای مطالعه روزمره معمولاً به اتصال مداوم اینترنت نیاز نداشته باشید.
محتوای آموزشی در قالبهای متنوع ارائه میشود تا هم برای یادگیری مفاهیم جدید و هم برای تثبیت آموختهها قابل استفاده باشد.
- رابط کاربری فارسی و راستچین با فونت وزیر.
- تم روشن و تیره مطابق تنظیمات سیستم.
- صفحهبندی ساده برای انتخاب دوره و شروع مرور.
- نمایش تعداد دفعات مرور هر فصل.
- انتخاب چند فصل برای مرور همزمان.
- امکان تمرکز بر فصلهایی که هنوز مرور نشدهاند.
این اپلیکیشن برای دانشآموزان، دانشجویان، داوطلبان آزمونها و علاقهمندان به یادگیری طراحی شده است؛ بهویژه کسانی که میخواهند مطالب آموزشی را در زمانهای کوتاه مرور کنند، دانستههای خود را بسنجند و مطالعه منظمتری داشته باشند.
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.