کتاب زبان اسمبلی IBM PC: راهنمای جامع از Bradley با فرمت AZW3 برای کتابخوان کیندل و فرمت EPUB
زبان اسمبلی IBM PC: راهنمای جامع از Bradley - دروازهای به اعماق سختافزار زبان اسمبلی IBM PC: دروازهای به اعماق سختافزار و نرمافزار آیا تا به حال فکر کردهاید که کامپیوتر شما در پایینترین سطح خود...
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره زبان اسمبلی IBM PC: راهنمای جامع از Bradley
موضوع کلی: برنامهنویسی و مهندسی نرمافزار
موضوع میانی: برنامهنویسی سطح پایین و معماری کامپیوتر
📋 سرفصلهای دوره
- 1. مبانی و پیشنیازها:
- 2. مقدمهای بر برنامهنویسی سطح پایین و اهمیت زبان اسمبلی
- 3. معرفی معماری IBM PC و اجزای اصلی آن
- 4. نظامهای عددی و نمایش دادهها (دودویی، هگزادسیمال، دسیمال)
- 5. ساختار حافظه و آدرسدهی در IBM PC
- 6. ثباتها (Registers) و نقش آنها در پردازش
- 7. محیط توسعه و ابزارهای مورد نیاز برای زبان اسمبلی (Assembler, Linker, Debugger)
- 8. نصب و راهاندازی MASM یا TASM
- 9. ساختار یک برنامه اسمبلی ساده و اولین برنامه "Hello World"
- 10. دستورالعملها و دستورات اصلی اسمبلی
- 11. کامپایل، لینک و اجرای یک برنامه اسمبلی
- 12. ساختار فایلهای اسمبلی: سگمنتها (Segments) و بخشها (Sections)
- 13. تعریف دادهها: متغیرها و ثابتها
- 14. انواع دادهها در زبان اسمبلی (Byte, Word, Double Word, ...)
- 15. عملگرهای محاسباتی و منطقی در اسمبلی
- 16. دستورات انتقال دادهها (MOV, PUSH, POP)
- 17. آدرسدهی مستقیم و غیرمستقیم
- 18. استفاده از ثباتهای ایندکس (SI, DI) و ثبات پایه (BP)
- 19. آدرسدهی نسبی و دسترسی به آرایهها
- 20. ساختارهای کنترلی: دستورات پرش (JMP, JE, JNE, ...)
- 21. دستورات مقایسه (CMP) و پرشهای شرطی
- 22. حلقهها: FOR، WHILE، REPEAT
- 23. زیربرنامهها (Subroutines) و استفاده از دستورات CALL و RET
- 24. پاس دادن پارامترها به زیربرنامهها (از طریق ثباتها، پشته)
- 25. مدیریت پشته (Stack) و اهمیت آن
- 26. کار با رشتهها (Strings) در اسمبلی
- 27. دستورات پردازش رشتهها (LODS, STOS, MOVS)
- 28. ورودی/خروجی (I/O) و ارتباط با سختافزار
- 29. ورودی از صفحه کلید (Keyboards)
- 30. خروجی به صفحه نمایش (Screen)
- 31. وقفهها (Interrupts) و کنترل آنها
- 32. وقفههای BIOS و DOS و کاربرد آنها
- 33. استفاده از وقفههای زمانسنج (Timers)
- 34. مدیریت حافظه در DOS
- 35. کار با فایلها در DOS (ایجاد، خواندن، نوشتن)
- 36. توابع سیستمی DOS
- 37. ساختار و استفاده از فایلهای اجرایی (EXE, COM)
- 38. دستورالعملهای پردازنده ریاضی (FPU)
- 39. کار با اعداد ممیز شناور (Floating-Point Numbers)
- 40. دستورالعملهای گرافیکی
- 41. ساختار ویدئو رم (Video RAM)
- 42. حالتهای متنی و گرافیکی صفحه نمایش
- 43. برنامهنویسی در حالت گرافیکی ساده
- 44. نوشتن درایورهای سختافزاری (مبانی)
- 45. ماکروها (Macros) و کاربرد آنها
- 46. تعریف و استفاده از ماکروها
- 47. دستورالعملهای پیشپردازنده (Preprocessor Directives)
- 48. ماکروهای شرطی
- 49. کتابخانهها (Libraries) و نحوه استفاده از آنها
- 50. ایجاد کتابخانههای سفارشی
- 51. اشکالزدایی (Debugging) برنامههای اسمبلی
- 52. استفاده از ابزارهای اشکالزدایی (Debuggers)
- 53. تکنیکهای اشکالزدایی پیشرفته
- 54. بهینهسازی کد اسمبلی
- 55. تکنیکهای بهینهسازی حافظه و سرعت اجرا
- 56. بررسی ساختار یک سیستمعامل ساده (مبانی)
- 57. بوتلودر (Bootloader) و نحوه عملکرد آن
- 58. نوشتن بوتلودر ساده
- 59. مباحث معماری پیشرفتهتر:
- 60. واحد مدیریت حافظه (MMU)
- 61. حالتهای حفاظت شده (Protected Mode)
- 62. سگمنتبندی (Segmentation) و صفحهبندی (Paging)
- 63. Context Switching
- 64. چندوظیفگی (Multitasking) در سطح سختافزار
- 65. برنامهنویسی موازی
- 66. کار با هستههای چندگانه (Multi-core)
- 67. دستورالعملهای SIMD (SSE, AVX)
- 68. اینتراپتهای سختافزاری
- 69. مدیریت وقفه های سخت افزاری
- 70. مدیریت خطاها و استثناها
- 71. برنامهنویسی سیستمعاملهای توکار (Embedded Systems)
- 72. معماری ARM و مقایسه با x86
- 73. برنامهنویسی سطح پایین در محیطهای مدرن (Linux, Windows)
- 74. واسطهای برنامهنویسی کاربردی (APIs)
- 75. استفاده از اسمبلی در برنامههای C/C++
- 76. ادغام کد اسمبلی در برنامههای C
- 77. ابزارهای cross-compilation
- 78. Reverse Engineering:
- 79. معرفی ابزارهای Reverse Engineering
- 80. دیساسمبل کردن (Disassembling)
- 81. تحلیل کد باینری
- 82. پیدا کردن باگها و آسیبپذیریها
- 83. مهندسی معکوس و امنیت
- 84. حملات مبتنی بر سرریز بافر (Buffer Overflow)
- 85. جلوگیری از حملات Buffer Overflow
- 86. برنامهنویسی امن
- 87. تحلیل کد مخرب (Malware Analysis)
- 88. ابزارهای پیشرفته اشکالزدایی
- 89. بهینهسازی عملکرد در برنامههای بزرگ
- 90. Profiling و شناسایی گلوگاهها (Bottlenecks)
- 91. استفاده از دستورالعملهای خاص پردازنده (CPU specific instructions)
- 92. مباحث پیشرفته در خصوص ساختار دادهها و الگوریتمها
- 93. پیادهسازی ساختمان دادههای پیشرفته (لیست پیوندی، درخت)
- 94. الگوریتمهای مرتبسازی و جستجو در اسمبلی
- 95. طراحی و پیادهسازی یک کامپایلر ساده (مبانی)
- 96. تولید کد اسمبلی از یک زبان سطح بالا
- 97. شبیهسازی (Emulation) و مجازیسازی (Virtualization)
- 98. توسعهی درایورهای سختافزاری پیشرفته
- 99. بررسی معماری پردازندههای مدرن (Core i7, Ryzen)
- 100. مروری بر زبان اسمبلی و مسیرهای آینده
تگها:
Assembleur sur IBM PC
Assembly Language
IBM PC
low-level programming
آموزش زبان اسمبلی
اسمبلر
برنامه نویسی داس
برنامه نویسی سطح پایین
زبان اسمبلی
کتاب بردلی
معماری x86
معماری کامپیوتر
وقفه های BIOS
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.