کتاب آموزش جامع و کاربردی زبان اسمبلی Sigma Assembler: از مقدمات تا پروژه‌های عملی با فرمت AZW3 برای کتابخوان کیندل و فرمت EPUB

آموزش جامع و کاربردی زبان اسمبلی Sigma Assembler: از مقدمات تا پروژه‌های عملی آموزش جامع و کاربردی زبان اسمبلی Sigma Assembler: از مقدمات تا پروژه‌های عملی آیا به دنبال تسلط بر دنیای برنامه‌نویسی سطح ...

انتخاب پلن

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

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

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

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

عنوان دوره: دوره آموزش جامع و کاربردی زبان اسمبلی Sigma Assembler: از مقدمات تا پروژه‌های عملی

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

موضوع میانی: زبان اسمبلی سیگما

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

  • 1. معرفی برنامه‌نویسی سطح پایین: چرا اسمبلی؟
  • 2. آشنایی با معماری کامپیوتر: دیدگاه سخت‌افزاری
  • 3. معرفی زبان اسمبلی سیگما و جایگاه آن
  • 4. تاریخچه و تکامل زبان‌های اسمبلی
  • 5. محیط توسعه سیگما: نصب و راه‌اندازی اسمبلر
  • 6. اولین برنامه سیگما: Hello World
  • 7. معرفی ساختار یک برنامه اسمبلی سیگما
  • 8. مفاهیم پایه: بیت، بایت، کلمه، DWORD
  • 9. سیستم‌های عددی: باینری، اکتال، دسیمال، هگزادسیمال
  • 10. نمایش داده‌ها در حافظه: اعداد صحیح، کاراکترها
  • 11. مفهوم Endianness: Little-Endian و Big-Endian
  • 12. ابزارهای اساسی: اسمبلر، لینکر، لودر
  • 13. مروری بر اجزای اصلی واحد پردازش مرکزی (CPU)
  • 14. رجیسترهای عمومی سیگما: کاربردها
  • 15. رجیسترهای اشاره‌گر و ایندکسر: EIP, ESP, EBP, ESI, EDI (یا معادل‌های سیگما)
  • 16. رجیستر پرچم (FLAGS Register) و بیت‌های وضعیت
  • 17. مدل‌های حافظه و سگمنت‌بندی در سیگما
  • 18. سازماندهی حافظه RAM: بخش‌های کد، داده و پشته
  • 19. نحوه دسترسی CPU به حافظه
  • 20. واحدهای ALU و CU: نقش آنها در اجرای دستورات
  • 21. چرخه اجرای دستور (Fetch-Decode-Execute)
  • 22. مفهوم آدرس‌دهی و انواع آن
  • 23. تفاوت حافظه کش و حافظه اصلی
  • 24. دستورات انتقال داده: MOV
  • 25. دستورات بارگذاری و ذخیره: LOAD و STORE
  • 26. دستورات پشته: PUSH و POP
  • 27. دستورات تبادل: XCHG
  • 28. دستورات حسابی: ADD, SUB
  • 29. دستورات ضرب: MUL (Unsigned) و IMUL (Signed)
  • 30. دستورات تقسیم: DIV (Unsigned) و IDIV (Signed)
  • 31. دستورات افزایش و کاهش: INC, DEC
  • 32. دستورات مقایسه: CMP
  • 33. دستورات منطقی: AND, OR, XOR, NOT
  • 34. دستورات نفی: NEG
  • 35. دستورات شیفت منطقی و حسابی: SHL, SHR, SAR, SAL
  • 36. دستورات چرخش: ROL, ROR, RCL, RCR
  • 37. مفهوم پرچم‌ها پس از دستورات حسابی و منطقی
  • 38. دستورات تبدیل داده
  • 39. دستور NOP و کاربرد آن
  • 40. مروری بر کدگذاری دستورات (Opcode)
  • 41. آدرس‌دهی مستقیم (Direct Addressing)
  • 42. آدرس‌دهی رجیستری (Register Addressing)
  • 43. آدرس‌دهی بلافصل (Immediate Addressing)
  • 44. آدرس‌دهی غیرمستقیم رجیستری (Register Indirect Addressing)
  • 45. آدرس‌دهی پایه و ایندکسی (Base & Index Addressing)
  • 46. آدرس‌دهی مقیاس‌دار (Scaled Index Addressing)
  • 47. استفاده از آفست‌ها و جابجایی‌ها
  • 48. تعریف متغیرها در بخش داده: DB, DW, DD, DQ
  • 49. تعریف رشته‌ها و کاراکترها
  • 50. تخصیص فضای حافظه برای آرایه‌ها
  • 51. دستورات کار با آدرس‌ها: LEA
  • 52. مدیریت حافظه پشته: کاربردها و محدودیت‌ها
  • 53. دستور پرش بدون قید و شرط: JMP
  • 54. لیبل‌ها (Labels) و کاربرد آنها
  • 55. دستور مقایسه و پرچم‌ها (CMP, TEST)
  • 56. دستورات پرش شرطی: JZ, JNZ, JE, JNE
  • 57. دستورات پرش شرطی برای مقادیر بدون علامت: JA, JAE, JB, JBE
  • 58. دستورات پرش شرطی برای مقادیر علامت‌دار: JG, JGE, JL, JLE
  • 59. پیاده‌سازی ساختارهای If-Else با دستورات پرش
  • 60. پیاده‌سازی حلقه‌های While و For با اسمبلی
  • 61. دستورات CALL و RET: فراخوانی زیربرنامه‌ها
  • 62. مفهوم پشته در فراخوانی توابع: ذخیره آدرس بازگشت
  • 63. ارسال پارامتر به زیربرنامه‌ها: روش‌های مختلف
  • 64. بازگرداندن مقادیر از زیربرنامه‌ها
  • 65. ماژولار کردن کد با استفاده از زیربرنامه‌ها
  • 66. کار با آرایه‌ها در سیگما: دسترسی به عناصر
  • 67. پیمایش آرایه‌ها با استفاده از حلقه‌ها و اشاره‌گرها
  • 68. مفهوم رشته‌ها و پایان‌دهنده Null-terminated
  • 69. دستورات کار با رشته‌ها (MOVS, SCAS, CMPS)
  • 70. جستجو و جایگزینی در رشته‌ها
  • 71. پیاده‌سازی ساختارها (Structs/Records) در اسمبلی
  • 72. آرایه‌ای از ساختارها
  • 73. تبدیل انواع داده (Type Casting) در اسمبلی
  • 74. مفاهیم اولیه صف و پشته در حافظه
  • 75. معرفی سیستم عامل و خدمات آن
  • 76. فراخوانی‌های سیستمی (System Calls/Interrupts) در سیگما
  • 77. ورودی/خروجی کنسول: خواندن کاراکترها
  • 78. ورودی/خروجی کنسول: نمایش رشته‌ها
  • 79. تبدیل اعداد به رشته و بالعکس برای نمایش
  • 80. کار با فایل‌ها: باز کردن، بستن، خواندن و نوشتن (فراخوانی‌های سیستمی)
  • 81. مفهوم دستگیره‌های فایل (File Handles)
  • 82. مدیریت خطاهای فراخوانی‌های سیستمی
  • 83. تعامل با پورت‌ها (مفاهیم پایه I/O Port)
  • 84. مفاهیم اولیه برنامه‌نویسی وقفه (Interrupt Handling)
  • 85. تعریف و استفاده از ماکروها (Macros)
  • 86. تفاوت ماکرو و زیربرنامه (Macro vs. Procedure)
  • 87. استفاده از دستورات شرطی و حلقه در ماکروها
  • 88. برنامه‌نویسی چند فایل: مفهوم لینکر و فایل‌های OBJ/LIB
  • 89. اشکال‌زدایی (Debugging) برنامه‌های اسمبلی: ابزارها و تکنیک‌ها
  • 90. بررسی حافظه و رجیسترها در Debugger
  • 91. نقاط توقف (Breakpoints) و اجرای گام به گام (Step-by-step Execution)
  • 92. بهینه‌سازی کد اسمبلی: سرعت و حجم
  • 93. اصول Cache-Friendly Programming
  • 94. فراخوانی توابع C/C++ از اسمبلی و بالعکس (ABI)
  • 95. پروژه ۱: پیاده‌سازی یک ماشین حساب ساده
  • 96. پروژه ۲: مدیریت یک لیست ساده از داده‌ها
  • 97. پروژه ۳: پیاده‌سازی یک بازی متنی ساده (مثلاً حدس عدد)
  • 98. پروژه ۴: کار با گرافیک پایه یا ASCII Art
  • 99. پروژه ۵: پیاده‌سازی یک برنامه کوچک ابزاری (مثلاً کپی فایل)
  • 100. آینده برنامه‌نویسی اسمبلی و کاربردهای نوین آن
تگ‌ها: Assembly Language Computer Architecture low-level programming Programming basics Sigma Assembler Sigma assembler tutorial آموزش اسمبلی آموزش زبان اسمبلی اسمبلی انگلیسی اسمبلی پروژه اسمبلی فارسی برنامه نویسی سطح پایین کتاب Sigma Assembler کدنویسی سطح پایین یادگیری اسمبلی

نظرات

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

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