اپلیکیشن اندرویدی فلشکارت آموزشی احیای قدرت TRS-80: برنامهنویسی اسمبلی Z80 برای کامپیوترهای کلاسیک
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره احیای قدرت TRS-80: برنامهنویسی اسمبلی Z80 برای کامپیوترهای کلاسیک
موضوع کلی: پردازشگرها و زبانهای اسمبلی
موضوع میانی: اصول برنامهنویسی اسمبلی برای سیستمهای مبتنی بر Z80
📋 سرفصلهای دوره
- 1. مقدمهای بر دوره و احیای کامپیوترهای کلاسیک
- 2. چرا زبان اسمبلی را یاد بگیریم؟ قدرت نهفته در سختافزار
- 3. تاریخچه کامپیوتر TRS-80 و پردازنده Zilog Z80
- 4. معماری پایه کامپیوتر: CPU، حافظه RAM و ROM، و ورودی/خروجی
- 5. سیستمهای عددی: باینری، هگزادسیمال و دهدهی
- 6. عملیات منطقی بولی: AND, OR, XOR, NOT
- 7. آشنایی با معماری پردازنده Z80: ثباتهای اصلی و کمکی
- 8. ثباتهای عمومی: A, B, C, D, E, H, L
- 9. ثباتهای خاص: SP, PC, IX, IY و ثباتهای سایه
- 10. ثبات فلگ (F): درک فلگهای Zero, Carry, Sign, Parity/Overflow
- 11. نقشه حافظه (Memory Map) در TRS-80
- 12. آمادهسازی محیط توسعه: شبیهسازها و اسمبلرها
- 13. ساختار یک برنامه اسمبلی Z80: برچسبها، دستورات و عملوندها
- 14. اولین برنامه شما: نمایش یک کاراکتر بر روی صفحه
- 15. اسمبل کردن، بارگذاری و اجرای برنامه
- 16. مقدمهای بر مجموعه دستورات (Instruction Set) Z80
- 17. دستورات انتقال داده ۸ بیتی: LD و انواع آن
- 18. انتقال بین ثباتها: LD r, r'
- 19. بارگذاری مقادیر فوری (Immediate): LD r, n
- 20. کار با حافظه: آدرسدهی مستقیم و غیرمستقیم
- 21. آدرسدهی غیرمستقیم با استفاده از HL: LD r, (HL) و LD (HL), r
- 22. آدرسدهی مستقیم: LD A, (nn) و LD (nn), A
- 23. دستورات انتقال داده ۱۶ بیتی: LD rr, nn
- 24. کار با پشته (Stack): ثبات SP
- 25. دستورات PUSH و POP: ذخیره و بازیابی داده از پشته
- 26. دستورات تبادل داده: EX و EXX
- 27. دستورات انتقال بلوکی: LDI, LDIR, LDD, LDDR
- 28. عملیات محاسباتی ۸ بیتی: ADD, SUB
- 29. جمع و تفریق با رقم نقلی (Carry): ADC, SBC
- 30. دستورات افزایش و کاهش: INC, DEC
- 31. عملیات محاسباتی ۱۶ بیتی: ADD HL, rr و ADC/SBC HL, rr
- 32. افزایش و کاهش ۱۶ بیتی: INC rr, DEC rr
- 33. عملیات منطقی: AND, OR, XOR
- 34. مقایسه دادهها: دستور CP و تأثیر آن بر فلگها
- 35. دستور معکوس کردن (Complement): CPL
- 36. دستورات چرخش و شیفت (Rotate and Shift)
- 37. چرخش آکومولاتور: RLCA, RLA, RRCA, RRA
- 38. دستورات عمومی چرخش و شیفت
- 39. دستورات دستکاری بیت (Bit Manipulation): BIT, SET, RES
- 40. پرشهای بدون شرط: JP و JR
- 41. پرشهای شرطی: استفاده از فلگها برای کنترل جریان برنامه
- 42. فراخوانی زیرروالها (Subroutines): دستور CALL
- 43. بازگشت از زیرروالها: دستور RET
- 44. فراخوانیها و بازگشتهای شرطی
- 45. زیرروالهای سریع: دستورات RST
- 46. حلقههای تکرار: استفاده از DJNZ برای ساخت شمارندهها
- 47. ساخت حلقههای پیچیدهتر با دستورات پرش
- 48. تعریف داده در برنامه: DEFB, DEFW, DEFS
- 49. کار با جداول و آرایهها در حافظه
- 50. آدرسدهی ایندکس شده با IX و IY
- 51. نوشتن زیرروالهای کارآمد و قابل استفاده مجدد
- 52. روشهای ارسال پارامتر به زیرروالها
- 53. مقدمهای بر ورودی و خروجی (I/O)
- 54. پورتهای ورودی/خروجی: دستورات IN و OUT
- 55. تعامل با ROM سیستمعامل TRS-80
- 56. فراخوانی روتینهای موجود در ROM
- 57. حافظه ویدیویی (Video RAM) در TRS-80
- 58. چاپ یک کاراکتر بر روی صفحه با دسترسی مستقیم به حافظه
- 59. چاپ یک رشته (String) بر روی صفحه
- 60. پاک کردن صفحه نمایش (Clear Screen)
- 61. کنترل مکاننما (Cursor)
- 62. کار با گرافیک بلوکی ۶ پیکسلی TRS-80
- 63. دستورات SET, RESET و POINT در BASIC و معادل اسمبلی آنها
- 64. ایجاد اشکال و الگوهای ساده گرافیکی
- 65. انیمیشن ابتدایی: حرکت دادن یک بلوک گرافیکی
- 66. خواندن صفحه کلید (Keyboard)
- 67. بررسی ماتریس صفحه کلید برای تشخیص کلید فشرده شده
- 68. نوشتن یک روتین برای دریافت ورودی از کاربر
- 69. مفهوم Debouncing در ورودی صفحه کلید
- 70. کار با نوار کاست (Cassette Tape)
- 71. روتینهای ROM برای خواندن و نوشتن روی نوار
- 72. تولید صدا: استفاده از پورت کاست برای ایجاد بوق و صداهای ساده
- 73. ایجاد تنهای موسیقی ساده با کنترل زمانبندی
- 74. وقفهها (Interrupts) در Z80
- 75. حالتهای وقفه: IM 0, IM 1, IM 2
- 76. نوشتن یک روال سرویس وقفه (Interrupt Service Routine - ISR)
- 77. استفاده از وقفه برای ایجاد یک ساعت یا تایمر
- 78. تکنیکهای پیشرفته برنامهنویسی
- 79. روتینهای ریاضی: ضرب ۸ بیتی و ۱۶ بیتی
- 80. روتینهای ریاضی: تقسیم
- 81. کار با اعداد BCD و دستور DAA
- 82. بهینهسازی کد برای سرعت
- 83. بهینهسازی کد برای حجم کمتر
- 84. کد خود تغییردهنده (Self-Modifying Code)
- 85. تکنیکهای دیباگ کردن برنامههای اسمبلی
- 86. ترکیب برنامههای اسمبلی با BASIC: دستور USR
- 87. استفاده از PEEK و POKE برای تعامل با کد اسمبلی
- 88. پروژه اول: نوشتن یک ابزار کوچک (مانند ویرایشگر حافظه)
- 89. آشنایی با سیستمعامل دیسک TRSDOS
- 90. ساختار فایلها و دیسک در TRSDOS
- 91. خواندن و نوشتن سکتورهای دیسک به صورت مستقیم
- 92. پروژه دوم: ساخت یک بازی ساده متنی
- 93. پروژه سوم: پیادهسازی بازی Pong
- 94. مبانی گرافیک اسپرایت (Sprite)
- 95. ایجاد و نمایش اسپرایتهای ساده
- 96. تشخیص برخورد (Collision Detection)
- 97. ایجاد یک حلقه اصلی بازی (Game Loop)
- 98. معکوسسازی و درک کدهای دیگران
- 99. نتیجهگیری دوره و مسیرهای یادگیری آینده
این اپلیکیشن فارسی برای یادگیری و مرور محتوای آموزشی از طریق فلشکارت طراحی شده است. کارتها را یکییکی مرور کنید، پاسخ پرسشها را به یاد بیاورید و نتیجه هر پاسخ را ثبت کنید. محتوای دوره پس از نصب درون برنامه در دسترس است تا برای مطالعه روزمره معمولاً به اتصال مداوم اینترنت نیاز نداشته باشید.
محتوای آموزشی در قالبهای متنوع ارائه میشود تا هم برای یادگیری مفاهیم جدید و هم برای تثبیت آموختهها قابل استفاده باشد.
- رابط کاربری فارسی و راستچین با فونت وزیر.
- تم روشن و تیره مطابق تنظیمات سیستم.
- صفحهبندی ساده برای انتخاب دوره و شروع مرور.
- نمایش تعداد دفعات مرور هر فصل.
- انتخاب چند فصل برای مرور همزمان.
- امکان تمرکز بر فصلهایی که هنوز مرور نشدهاند.
این اپلیکیشن برای دانشآموزان، دانشجویان، داوطلبان آزمونها و علاقهمندان به یادگیری طراحی شده است؛ بهویژه کسانی که میخواهند مطالب آموزشی را در زمانهای کوتاه مرور کنند، دانستههای خود را بسنجند و مطالعه منظمتری داشته باشند.
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.