کتاب آموزش جامع برنامهنویسی اسمبلی x86: از صفر تا تسلط (بر اساس کتاب مزیدی) با فرمت AZW3 برای کتابخوان کیندل و فرمت EPUB
آموزش جامع برنامهنویسی اسمبلی x86: از صفر تا تسلط (بر اساس کتاب مزیدی) آموزش جامع برنامهنویسی اسمبلی x86: از صفر تا تسلط (بر اساس کتاب مزیدی) آیا به دنیای عمیق و پر رمز و راز برنامهنویسی سیستم و سخ...
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره آموزش جامع برنامهنویسی اسمبلی x86: از صفر تا تسلط (بر اساس کتاب مزیدی)
موضوع کلی: برنامهنویسی سیستم و سختافزار
موضوع میانی: برنامهنویسی اسمبلی x86
📋 سرفصلهای دوره
- 1. مقدمه ای بر برنامهنویسی سیستم و سختافزار
- 2. چرا اسمبلی x86؟
- 3. تاریخچه IBM PC و معماری آن
- 4. آشنایی با پردازندههای x86 (8086 تا 80486)
- 5. ساختار کلی یک برنامه اسمبلی
- 6. ابزارهای مورد نیاز: اسمبلر، لینکر، دیباگر
- 7. اولین برنامه اسمبلی: Hello World
- 8. نصب و راهاندازی محیط توسعه
- 9. مفاهیم اولیه: رجیسترها
- 10. انواع رجیسترها: عمومی، سگمنت، اشارهگر
- 11. کار با رجیسترهای عمومی (AX, BX, CX, DX)
- 12. کار با رجیسترهای سگمنت (CS, DS, SS, ES)
- 13. کار با رجیسترهای اشارهگر (SP, BP, SI, DI)
- 14. آدرسدهی حافظه: سگمنتها و آفستها
- 15. سگمنت کد، سگمنت داده، سگمنت پشته
- 16. اصول اولیه دستورات اسمبلی
- 17. دستور انتقال داده (MOV)
- 18. انتقال بین رجیسترها
- 19. انتقال بین رجیستر و حافظه
- 20. انتقال بین حافظه و رجیستر
- 21. انتقال مقادیر ثابت به رجیسترها و حافظه
- 22. عملیات حسابی: جمع (ADD)
- 23. جمع با مقادیر ثابت
- 24. جمع با رجیسترها
- 25. جمع با حافظه
- 26. سرریز در عملیات جمع (Carry Flag)
- 27. عملیات حسابی: تفریق (SUB)
- 28. تفریق با مقادیر ثابت
- 29. تفریق با رجیسترها
- 30. تفریق با حافظه
- 31. کاهش (DEC) و افزایش (INC)
- 32. عملیات منطقی: AND
- 33. AND با رجیسترها
- 34. AND با حافظه
- 35. AND با مقادیر ثابت
- 36. عملیات منطقی: OR
- 37. OR با رجیسترها
- 38. OR با حافظه
- 39. OR با مقادیر ثابت
- 40. عملیات منطقی: XOR
- 41. XOR با رجیسترها
- 42. XOR با حافظه
- 43. XOR با مقادیر ثابت
- 44. عملیات منطقی: NOT
- 45. NOT بر روی رجیسترها
- 46. NOT بر روی حافظه
- 47. عملیات مقایسهای: CMP
- 48. مقایسه رجیستر با رجیستر
- 49. مقایسه رجیستر با حافظه
- 50. مقایسه حافظه با حافظه
- 51. مقایسه با مقادیر ثابت
- 52. دستورات پرش (JMP)
- 53. پرش بدون شرط
- 54. پرش شرطی بر اساس فلگها
- 55. پرش بر اساس مقایسه
- 56. پرش بر اساس فلگهای صفر (ZF) و غیرصفر (NF)
- 57. پرش بر اساس فلگهای کري (CF) و برعکس (NCF)
- 58. پرش بر اساس فلگهای علامت (SF) و برعکس (NSF)
- 59. حلقهها (Loops)
- 60. دستور LOOP
- 61. شمارشگر در رجیستر CX
- 62. نوشتن حلقههای ساده
- 63. حلقههای تودرتو
- 64. استفاده از JZ و JNZ در حلقهها
- 65. پردازش رشتهها
- 66. دستورات رشتهای: MOVSB, MOVSW, MOVSD
- 67. دستورات رشتهای: SCASB, SCASW, SCASD
- 68. دستورات رشتهای: CMPSB, CMPSW, CMPSD
- 69. دستورات رشتهای: LODSB, LODSW, LODSD
- 70. دستورات رشتهای: STOSB, STOSW, STOSD
- 71. کار با پشته (Stack)
- 72. مفاهیم پشته: PUSH و POP
- 73. ذخیره و بازیابی رجیسترها روی پشته
- 74. ذخیره و بازیابی دادهها از حافظه روی پشته
- 75. عملیات توابع (Procedures)
- 76. تعریف توابع (PROC, ENDP)
- 77. فراخوانی توابع (CALL)
- 78. بازگشت از توابع (RET)
- 79. مدیریت پارامترهای توابع از طریق رجیسترها
- 80. مدیریت پارامترهای توابع از طریق پشته
- 81. پاس دادن آرگومان به توابع
- 82. بازگرداندن مقادیر از توابع
- 83. توابع و دامنهها (Scope)
- 84. مدیریت نامگذاری توابع
- 85. اسمبلر و لینکر
- 86. فایلهای Object و اجرایی
- 87. مراحل اسمبل و لینک
- 88. کار با دستورات اسمبلر (Assembly Directives)
- 89. تعریف داده (DB, DW, DD)
- 90. تعریف متغیرها
- 91. تعریف ثابتها (EQU, = )
- 92. انواع دادهها در اسمبلی
- 93. کار با اشارهگرها (Pointers)
- 94. اشارهگرهای Near و Far
- 95. اشارهگرهای عمومی (Generic Pointers)
- 96. مدیریت حافظه با استفاده از اشارهگرها
- 97. آرایهها (Arrays)
- 98. تعریف و دسترسی به عناصر آرایهها
- 99. پردازش آرایهها
- 100. آرایههای چندبعدی
تگها:
Computer Architecture
CPU
Hardware Programming
Interrupts
low-level programming
Registers
System Programming
x86 Assembly Programming
برنامه نویسی سطح پایین
برنامهنویسی اسمبلی x86
برنامهنویسی سختافزار
برنامهنویسی سیستم
مزیدی
معماری کامپیوتر
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.