کتاب زبان ماشین برای مبتدیان: از صفر تا درک کامل عملکرد CPU با فرمت AZW3 برای کتابخوان کیندل و فرمت EPUB
دوره زبان ماشین برای مبتدیان: از صفر تا درک کامل عملکرد CPU زبان ماشین برای مبتدیان: سفری به قلب تپنده کامپیوتر تا به حال از خود پرسیدهاید وقتی یک خط کد پایتون، جاوااسکریپت یا ++C را اجرا میکنید، در...
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره زبان ماشین برای مبتدیان: از صفر تا درک کامل عملکرد CPU
موضوع کلی: برنامهنویسی سطح پایین
موضوع میانی: زبان ماشین و معماری کامپیوتر
📋 سرفصلهای دوره
- 1. معرفی دوره: چرا زبان ماشین؟
- 2. برنامهنویسی سطح پایین چیست؟
- 3. دید کلی به ساختار کامپیوتر
- 4. اجزای اصلی کامپیوتر: CPU، حافظه، ورودی/خروجی
- 5. تاریخچه مختصر ماشینها و زبانهای برنامهنویسی
- 6. اطلاعات دیجیتال: بیت و بایت
- 7. سیستم عددی دودویی (Binary)
- 8. مبنای هشت (Octal) و مبنای شانزده (Hexadecimal)
- 9. تبدیل مبناها: دهدهی به دودویی و برعکس
- 10. تبدیل مبناها: شانزدهی به دودویی و برعکس
- 11. معرفی گیتهای منطقی: NOT، AND، OR
- 12. گیتهای منطقی: XOR، NAND، NOR
- 13. جدول صحت و مفاهیم پایهای منطق
- 14. ساخت مدارهای منطقی ساده
- 15. مفهوم Clock و زمانبندی در کامپیوتر
- 16. حافظه اصلی کامپیوتر: RAM و ROM
- 17. نحوه ذخیرهسازی اطلاعات در حافظه
- 18. مفهوم آدرسدهی حافظه
- 19. واحدهای اندازهگیری حافظه: بایت، کیلوبایت، مگابایت
- 20. معرفی واحد پردازش مرکزی (CPU)
- 21. معماری Von Neumann و Harvard
- 22. اجزای داخلی CPU: ALU، Control Unit، Registers
- 23. معرفی رجیسترها: قلب CPU
- 24. انواع رجیسترهای عمومی (General-Purpose Registers)
- 25. رجیسترهای خاص منظوره (Special-Purpose Registers): PC، SP، Flag
- 26. واحد منطق و حساب (ALU) و عملکرد آن
- 27. واحد کنترل (Control Unit) و نقش آن
- 28. گذرگاهها (Buses): Address Bus، Data Bus، Control Bus
- 29. چرخه واکشی-رمزگشایی-اجرا (Fetch-Decode-Execute Cycle)
- 30. دادهها در کامپیوتر: اعداد صحیح بدون علامت
- 31. اعداد صحیح علامتدار: نمایش علامت و قدر مطلق
- 32. نمایش اعداد علامتدار: متمم یک (One's Complement)
- 33. نمایش اعداد علامتدار: متمم دو (Two's Complement)
- 34. جمع و تفریق با متمم دو
- 35. سرریز (Overflow) و پرچمها (Flags) در عملیات عددی
- 36. معرفی اعداد اعشاری (Floating-Point Numbers) (مقدماتی)
- 37. نمایش کاراکترها: کد ASCII
- 38. ذخیره و پردازش رشتهها
- 39. نمایش بولین و کاربرد آن
- 40. مروری بر ساختار کلی حافظه و CPU
- 41. دستورالعملهای زبان ماشین چیستند؟
- 42. فرمت دستورالعملها: Opcode و Operand
- 43. مجموعه دستورالعمل (Instruction Set)
- 44. دستورالعملهای انتقال داده (Data Movement): LOAD، STORE
- 45. دستورالعملهای انتقال داده: MOVE
- 46. حالتهای آدرسدهی (Addressing Modes): مقدمه
- 47. آدرسدهی فوری (Immediate Addressing)
- 48. آدرسدهی مستقیم (Direct Addressing)
- 49. آدرسدهی رجیستری (Register Addressing)
- 50. آدرسدهی غیرمستقیم رجیستری (Register Indirect Addressing)
- 51. آدرسدهی شاخصدار (Indexed Addressing) (مقدماتی)
- 52. دستورالعملهای محاسباتی: جمع (ADD)
- 53. دستورالعملهای محاسباتی: تفریق (SUBTRACT)
- 54. دستورالعملهای محاسباتی: ضرب (MULTIPLY) (مقدماتی)
- 55. دستورالعملهای محاسباتی: تقسیم (DIVIDE) (مقدماتی)
- 56. دستورالعملهای منطقی: AND، OR، NOT
- 57. دستورالعملهای منطقی: XOR
- 58. دستورالعملهای شیفت (Shift): شیفت به چپ و راست منطقی
- 59. دستورالعملهای شیفت: شیفت به چپ و راست حسابی
- 60. دستورالعملهای چرخش (Rotate): چرخش ساده
- 61. دستورالعملهای مقایسه (Compare): CMP
- 62. پرچمها (Flags) در رجیستر وضعیت (Status Register)
- 63. پرچم صفر (Zero Flag) و پرچم منفی (Negative Flag)
- 64. پرچم سرریز (Overflow Flag) و پرچم حمل (Carry Flag)
- 65. دستورالعملهای پرش بدون شرط (Unconditional Jump): JMP
- 66. دستورالعملهای پرش شرطی (Conditional Jump): JZ، JNZ
- 67. دستورالعملهای پرش شرطی: JG، JL، JGE، JLE
- 68. دستورالعملهای فراخوانی زیربرنامه (CALL)
- 69. دستورالعملهای بازگشت از زیربرنامه (RETURN)
- 70. کار با پشته (Stack): PUSH و POP
- 71. زبان اسمبلی: پل بین زبان ماشین و انسان
- 72. اسمبلر (Assembler) و نقش آن
- 73. ساختار یک برنامه اسمبلی: بخش داده، بخش کد
- 74. دستورالعملهای اسمبلی (Mnemonics)
- 75. دایرکتیوها (Directives) و شبهدستورالعملها (Pseudo-Ops)
- 76. مثال عملی: اولین برنامه اسمبلی ساده
- 77. کامپایل، اسمبل، لینک و اجرا
- 78. اشکالزدایی (Debugging) برنامههای اسمبلی: شبیهسازها
- 79. حلقهها در زبان ماشین/اسمبلی: ساختار حلقه While
- 80. حلقهها در زبان ماشین/اسمبلی: ساختار حلقه For
- 81. ساختار شرطی IF-ELSE در زبان ماشین/اسمبلی
- 82. زیربرنامهها (Subroutines) و انتقال آرگومانها
- 83. بازگشت از زیربرنامه و مدیریت پشته
- 84. کار با آرایهها در حافظه
- 85. دسترسی به عناصر آرایه با آدرسدهی شاخصدار
- 86. ورودی/خروجی (I/O) در سطح زبان ماشین
- 87. I/O نگاشت شده به حافظه (Memory-Mapped I/O)
- 88. I/O مبتنی بر پورت (Port-Mapped I/O)
- 89. کنترل دستگاههای جانبی (مقدماتی)
- 90. مفهوم وقفه (Interrupts): مقدمه
- 91. مدیریت وقفهها و روال سرویس وقفه (ISR)
- 92. کاربرد وقفهها در I/O و سیستمعامل
- 93. چرخه Fetch-Decode-Execute-Writeback (تکمیل شده)
- 94. خط لوله (Pipelining) دستورالعملها (مقدماتی)
- 95. حافظه کش (Cache Memory): مقدمه و کاربرد
- 96. سطوح حافظه کش: L1, L2, L3 (مفهوم)
- 97. مقدمهای بر معماریهای CPU مدرن (x86، ARM)
- 98. تفاوتهای کلیدی بین RISC و CISC (مقدماتی)
- 99. تعامل با سیستمعامل: System Calls (مقدماتی)
- 100. جمعبندی: از صفر تا درک کامل عملکرد CPU
تگها:
Assembly
Compiler
Computer Architecture
CPU
Debugging
low-level programming
Machine Language
Machine Language for Beginners
آموزش زبان ماشین
اسمبلی
برنامهنویسی سطح پایین
پردازنده
دیباگینگ
زبان ماشین
کامپایلر
معماری کامپیوتر
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.