کتاب کاوش عمیق در برنامه‌نویسی سطح پایین: C، اسمبلی و اجرای برنامه در معماری Intel® 64 با فرمت AZW3 برای کتابخوان کیندل و فرمت EPUB

کاوش عمیق در برنامه‌نویسی سطح پایین: C، اسمبلی و اجرای برنامه در معماری Intel® 64 کاوش عمیق در برنامه‌نویسی سطح پایین: C، اسمبلی و اجرای برنامه در معماری Intel® 64 🔑 معرفی دوره: دروازه‌ای به اعماق پنه...

انتخاب پلن

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

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

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

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

عنوان دوره: دوره کاوش عمیق در برنامه‌نویسی سطح پایین: C، اسمبلی و اجرای برنامه در معماری Intel® 64

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

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

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

  • 1. مبانی و پیش‌نیازها:
  • 2. مقدمه‌ای بر علوم کامپیوتر و برنامه‌نویسی سیستمی
  • 3. مروری بر معماری کامپیوتر و اجزای آن
  • 4. سیستم اعداد و نمایش داده‌ها (صحیح، ممیز شناور)
  • 5. سیستم عامل و نقش آن در اجرای برنامه‌ها
  • 6. مفاهیم اولیه زبان C و ابزارهای کامپایلر
  • 7. راه‌اندازی محیط توسعه برای برنامه‌نویسی سطح پایین
  • 8. نصب و راه‌اندازی ابزارهای مورد نیاز (کامپایلر، اسمبلر، دیباگر)
  • 9. ساختار یک برنامه C ساده و نحوه کامپایل آن
  • 10. مدیریت حافظه در سطح بالا و پایین
  • 11. آشنایی با دستورالعمل‌های اسمبلی و زبان ماشین
  • 12. برنامه‌نویسی مقدماتی در زبان C: متغیرها، انواع داده‌ها، عملگرها
  • 13. ساختارهای کنترلی در C (if/else، حلقه‌ها)
  • 14. توابع در C و نحوه فراخوانی آن‌ها
  • 15. آرایه‌ها و رشته‌ها در C
  • 16. ساختارهای داده‌ای سفارشی در C
  • 17. نشانگرها (Pointer) در C: مفاهیم و کاربردها
  • 18. عملیات روی نشانگرها و آدرس‌دهی مستقیم حافظه
  • 19. مدیریت حافظه پویا با malloc، calloc، و free
  • 20. آشنایی با ساختار پشته (Stack) و عملکرد آن
  • 21. آشنایی با ساختار پشته در هنگام فراخوانی توابع
  • 22. آشنایی با ساختار پشته در هنگام فراخوانی توابع (ادامه)
  • 23. آشنایی با ساختار هیپ (Heap) و مدیریت آن
  • 24. فایل‌ها و ورودی/خروجی در C (stdio)
  • 25. ساختار فایل‌های اجرایی (Executable files)
  • 26. لینک کردن و فرآیند تولید فایل اجرایی
  • 27. مروری بر زبان اسمبلی (Assembly)
  • 28. ثبات‌ها (Registers) در معماری Intel® 64
  • 29. دستورالعمل‌های انتقال داده (MOV، LEA، ...)
  • 30. دستورالعمل‌های محاسباتی (ADD، SUB، MUL، DIV، ...)
  • 31. دستورالعمل‌های منطقی (AND، OR، XOR، NOT، ...)
  • 32. دستورالعمل‌های پرش (JMP، JE، JNE، ...)
  • 33. آدرس‌دهی در اسمبلی: انواع و روش‌ها
  • 34. برنامه‌نویسی اسمبلی: نوشتن اولین برنامه‌ها
  • 35. بررسی نحوه تبدیل کد C به اسمبلی
  • 36. تعامل بین C و اسمبلی (Inline Assembly)
  • 37. ساختار داده‌ها در اسمبلی
  • 38. بررسی توابع در اسمبلی و نحوه فراخوانی آن‌ها
  • 39. آرایه‌ها و رشته‌ها در اسمبلی
  • 40. مدیریت حافظه در اسمبلی
  • 41. مدیریت حافظه پویا در اسمبلی (به صورت دستی)
  • 42. آشنایی با سیستم عامل و رابط‌های سیستمی
  • 43. سیستم عامل و وقفه ها (Interrupts)
  • 44. سیستم عامل و فراخوانی‌های سیستمی (System calls)
  • 45. فراخوانی‌های سیستمی در لینوکس و ویندوز
  • 46. بررسی کتابخانه‌های استاندارد C و نحوه استفاده از آن‌ها
  • 47. دینامیک لینک (Dynamic linking)
  • 48. استاتیک لینک (Static linking)
  • 49. آشنایی با دیباگر (Debugger) و نحوه استفاده از آن
  • 50. دیباگ کردن کدهای C و اسمبلی
  • 51. بهینه‌سازی کد: مقدمه و تکنیک‌های اولیه
  • 52. تکنیک‌های پیشرفته بهینه‌سازی
  • 53. آشنایی با Multithreading و Multiprocessing
  • 54. برنامه‌نویسی چند رشته‌ای (Multithreading) در C
  • 55. مدیریت فرآیندها در سیستم عامل
  • 56. بررسی حافظه مجازی (Virtual Memory)
  • 57. سیستم فایل و ساختار آن
  • 58. امنیت در برنامه‌نویسی سطح پایین
  • 59. آسیب‌پذیری‌های امنیتی در برنامه‌نویسی سطح پایین
  • 60. آسیب‌پذیری Buffer Overflow و نحوه جلوگیری از آن
  • 61. آسیب‌پذیری Format String و نحوه جلوگیری از آن
  • 62. آشنایی با ابزارهای تحلیل کد (Code analysis tools)
  • 63. ابزارهای پروفایل (Profiling tools) و نحوه استفاده از آن‌ها
  • 64. آشنایی با معماری CPU و عملکرد آن
  • 65. ساختار CPU: واحد محاسبات، کنترل و حافظه پنهان (Cache)
  • 66. آشنایی با دستورالعمل‌های SIMD و استفاده از آن‌ها
  • 67. آشنایی با اسمبلی x86-64 برای پردازش موازی
  • 68. بررسی دستورالعمل‌های خاص CPU (مانند SSE و AVX)
  • 69. برنامه‌نویسی با استفاده از SSE
  • 70. برنامه‌نویسی با استفاده از AVX
  • 71. اصول اولیه درایورنویسی (Driver development)
  • 72. معرفی هسته سیستم‌عامل
  • 73. ساختارهای داده‌ای هسته
  • 74. نوشتن ماژول‌های هسته
  • 75. برنامه‌نویسی شبکه در سطح پایین
  • 76. پروتکل‌های شبکه (TCP/IP, UDP)
  • 77. سوکت‌ها (Sockets) و برنامه‌نویسی شبکه
  • 78. برنامه‌نویسی موازی (Parallel Programming)
  • 79. مدل‌های حافظه مشترک و پیام‌رسانی
  • 80. مدل‌های حافظه مشترک و پیام‌رسانی (ادامه)
  • 81. ارتباط بین فرآیندها (Inter-Process Communication - IPC)
  • 82. شِیرد مِموری (Shared Memory)
  • 83. سیگنال‌ها و اینترپروسس کامونیکیشن (Signals & IPC)
  • 84. بهبود عملکرد برنامه‌ها با استفاده از تکنیک‌های پیشرفته
  • 85. بهبود عملکرد برنامه‌ها با استفاده از تکنیک‌های پیشرفته (ادامه)
  • 86. بررسی سیستم‌های عامل بی‌درنگ (Real-time operating systems - RTOS)
  • 87. معماری ARM و مقایسه با x86-64
  • 88. بررسی مفاهیم مرتبط با embedded systems
  • 89. استفاده از C در توسعه سیستم‌های embedded
  • 90. مروری بر مهندسی معکوس (Reverse Engineering)
  • 91. ابزارهای مهندسی معکوس
  • 92. تکنیک‌های جلوگیری از مهندسی معکوس
  • 93. کار با بایوس (BIOS) و UEFI
  • 94. آشنایی با بوت‌لودر (Bootloader)
  • 95. برنامه‌نویسی Firmware
  • 96. آشنایی با امنیت سخت‌افزاری
  • 97. بررسی آسیب‌پذیری‌های سخت‌افزاری
  • 98. آینده برنامه‌نویسی سطح پایین
  • 99. روندها و فناوری‌های نوظهور در برنامه‌نویسی سیستمی
  • 100. بهترین روش‌ها و الگوهای طراحی در برنامه‌نویسی سطح پایین
تگ‌ها: Assembly Intel 64 low-level programming x86-64 اجرای برنامه برنامه‌نویسی سطح پایین برنامه‌نویسی سیستمی زبان C++ زبان اسمبلی علوم کامپیوتر کامپایلر مدیریت حافظه معماری کامپیوتر مهندسی نرم‌افزار

نظرات

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

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