کتاب تسخیر قلب IBM PC: برنامه‌نویسی اسمبلی 8088 از پایه تا پیشرفته با فرمت AZW3 برای کتابخوان کیندل و فرمت EPUB

تسخیر قلب IBM PC: برنامه‌نویسی اسمبلی 8088 از پایه تا پیشرفته تسخیر قلب IBM PC: برنامه‌نویسی اسمبلی 8088 از پایه تا پیشرفته آیا رویای درک عمیق از نحوه عملکرد کامپیوترها را در سر دارید؟ آیا می‌خواهید ب...

انتخاب پلن

انتخاب پلن برای ادامه خرید الزامی است.

پرداخت اقساطی
در صورت خرید اقساطی هر قسط: 87,488 تومان
۴ قسط ماهانه. بدون سود، چک و ضامن.
پرداخت اقساطی با دیجی‌پی پرداخت اقساطی با ترب‌پی

🎓 دوره آموزشی جامع

📚 اطلاعات دوره

عنوان دوره: دوره تسخیر قلب IBM PC: برنامه‌نویسی اسمبلی 8088 از پایه تا پیشرفته

موضوع کلی: معماری و برنامه‌نویسی سیستم‌های کامپیوتری

موضوع میانی: برنامه‌نویسی سطح پایین و تعامل مستقیم با سخت‌افزار

📋 سرفصل‌های دوره

  • 1. مقدمه‌ای بر معماری کامپیوتر و زبان اسمبلی
  • 2. تاریخچه IBM PC و پردازنده 8088
  • 3. سیستم‌های عددی: باینری و هگزادسیمال
  • 4. تبدیل بین مبناهای عددی
  • 5. نمایش اعداد صحیح علامت‌دار و بدون علامت
  • 6. کاراکترها و کدهای اسکی (ASCII)
  • 7. مفاهیم پایه حافظه: بیت، بایت، کلمه و آدرس‌دهی
  • 8. معماری پردازنده 8088: نگاهی کلی
  • 9. ثبات‌های همه‌منظوره: AX, BX, CX, DX
  • 10. ثبات‌های سگمنت: CS, DS, SS, ES
  • 11. ثبات‌های اشاره‌گر و اندیس: SP, BP, SI, DI
  • 12. ثبات پرچم‌ها (Flags Register) و نقش هر پرچم
  • 13. مفهوم سگمنت و آفست در حالت واقعی (Real Mode)
  • 14. پشته (Stack) و عملکرد آن
  • 15. نصب و راه‌اندازی محیط برنامه‌نویسی (DOSBox, MASM/TASM, Linker)
  • 16. ساختار یک برنامه اسمبلی ساده (.MODEL, .STACK, .DATA, .CODE)
  • 17. اولین برنامه: "Hello, World!"
  • 18. استفاده از دیباگر (DEBUG.COM) برای تحلیل کد
  • 19. دستورالعمل انتقال داده: MOV
  • 20. تعریف داده‌ها در برنامه: DB, DW, DD
  • 21. آدرس‌دهی مستقیم و ثبات (Direct and Register Addressing)
  • 22. آدرس‌دهی غیرمستقیم (Indirect Addressing)
  • 23. دستورالعمل‌های محاسباتی: ADD و SUB
  • 24. دستورالعمل‌های INC و DEC
  • 25. دستورالعمل‌های ضرب: MUL و IMUL
  • 26. دستورالعمل‌های تقسیم: DIV و IDIV
  • 27. دستورالعمل‌های منطقی: AND, OR, XOR, NOT
  • 28. دستورالعمل TEST و کاربرد آن
  • 29. دستورالعمل‌های شیفت منطقی: SHL و SHR
  • 30. دستورالعمل‌های شیفت حسابی: SAL و SAR
  • 31. دستورالعمل‌های چرخش: ROL و ROR
  • 32. دستورالعمل‌های چرخش با بیت کری: RCL و RCR
  • 33. عملکرد پشته: دستورات PUSH و POP
  • 34. دستورات PUSHF و POPF برای کار با پرچم‌ها
  • 35. دستورالعمل LEA: بارگذاری آدرس مؤثر
  • 36. انتقال داده بین حافظه و ثبات‌های سگمنت
  • 37. دستورالعمل XCHG
  • 38. پرش بدون شرط: JMP
  • 39. دستورالعمل مقایسه: CMP
  • 40. پرش‌های شرطی بر اساس پرچم صفر و علامت (JZ, JNZ, JS, JNS)
  • 41. پرش‌های شرطی بر اساس پرچم کری و سرریز (JC, JNC, JO, JNO)
  • 42. پرش‌های شرطی برای اعداد بدون علامت (JA, JB, JAE, JBE)
  • 43. پرش‌های شرطی برای اعداد علامت‌دار (JG, JL, JGE, JLE)
  • 44. ایجاد حلقه‌ها با استفاده از JMP و پرش‌های شرطی
  • 45. دستورالعمل LOOP
  • 46. زیربرنامه‌ها (Procedures): تعریف و فراخوانی (PROC, ENDP, CALL, RET)
  • 47. ارسال پارامتر به زیربرنامه‌ها از طریق ثبات‌ها
  • 48. ارسال پارامتر به زیربرنامه‌ها از طریق پشته
  • 49. متغیرهای محلی روی پشته
  • 50. مفهوم وقفه‌ها (Interrupts): سخت‌افزاری و نرم‌افزاری
  • 51. جدول بردار وقفه (Interrupt Vector Table)
  • 52. وقفه نرم‌افزاری DOS: آشنایی با INT 21h
  • 53. پایان دادن به برنامه با INT 21h (تابع 4Ch)
  • 54. چاپ یک کاراکتر در خروجی (تابع 02h)
  • 55. دریافت یک کاراکتر از ورودی (تابع 01h)
  • 56. چاپ یک رشته در خروجی (تابع 09h)
  • 57. دریافت یک رشته از ورودی (تابع 0Ah)
  • 58. آشنایی با فایل‌ها در DOS: مفاهیم اولیه
  • 59. ایجاد و باز کردن فایل با استفاده از دستگیره (File Handle)
  • 60. نوشتن داده در فایل
  • 61. خواندن داده از فایل
  • 62. بستن فایل
  • 63. تغییر مکان اشاره‌گر فایل (File Seeking)
  • 64. حذف فایل
  • 65. وقفه‌های بایوس (BIOS): مقدمه‌ای بر INT 10h برای ویدیو
  • 66. تغییر حالت ویدیو (متنی و گرافیکی)
  • 67. تنظیم موقعیت مکان‌نما (Cursor)
  • 68. نوشتن کاراکتر و ویژگی‌های آن (Attribute) در صفحه
  • 69. پاک کردن صفحه نمایش
  • 70. پیمایش (Scroll) صفحه نمایش
  • 71. آشنایی با حالت‌های گرافیکی CGA
  • 72. رسم پیکسل در حالت گرافیکی
  • 73. وقفه بایوس برای صفحه‌کلید: INT 16h
  • 74. خواندن یک کلید از بافر صفحه‌کلید
  • 75. بررسی وضعیت بافر صفحه‌کلید
  • 76. کدهای اسکن (Scan Codes) و کدهای اسکی
  • 77. وقفه بایوس برای دیسک: INT 13h (مفاهیم پایه)
  • 78. خواندن سکتور از دیسک
  • 79. وقفه بایوس برای ساعت سیستم: INT 1Ah
  • 80. خواندن شمارنده تیک ساعت
  • 81. برنامه‌نویسی مستقیم سخت‌افزار: پورت‌های ورودی/خروجی
  • 82. دستورالعمل‌های IN و OUT
  • 83. برنامه‌نویسی بلندگوی داخلی کامپیوتر
  • 84. دستورالعمل‌های رشته‌ای: MOVSB, MOVSW
  • 85. پیشوندهای تکرار: REP, REPE, REPNE
  • 86. دستورالعمل‌های مقایسه رشته: CMPSB, CMPSW
  • 87. دستورالعمل‌های اسکن رشته: SCASB, SCASW
  • 88. دستورالعمل‌های بارگذاری و ذخیره رشته: LODSB, STOSB
  • 89. ماکروها: تعریف و استفاده
  • 90. ارسال پارامتر به ماکروها
  • 91. دستورالعمل LOCAL در ماکروها
  • 92. اسمبلی شرطی (Conditional Assembly): IF, ELSE, ENDIF
  • 93. مدل‌های حافظه (Memory Models): SMALL, MEDIUM, COMPACT, LARGE
  • 94. دستورالعمل ASSUME
  • 95. اتصال (Linking) چندین فایل آبجکت
  • 96. دستورالعمل‌های PUBLIC و EXTRN
  • 97. تفاوت برنامه‌های COM و EXE
  • 98. ساختار برنامه‌های COM
  • 99. ساختار برنامه‌های EXE و Program Segment Prefix (PSP)
  • 100. نوشتن یک روتین سرویس وقفه (ISR) ساده
تگ‌ها: 8088 Assembly Computer Architecture DOS IBM PC low-level programming Microprocessor برنامه‌نویسی اسمبلی برنامه‌نویسی سیستم برنامه‌نویسی کلاسیک پردازنده 8088 سخت‌افزار سطح پایین معماری کامپیوتر

نظرات

هنوز نظری ثبت نشده است.

وارد شوید تا نظر ثبت کنید.