کتاب زبان انگلیسی برای مهندسان در درک و کاربرد مفاهیم مربوط به مهندسی کامپایلر
📚 کتاب آموزشی جامع
📚 اطلاعات کتاب
عنوان کتاب: کتاب زبان انگلیسی برای مهندسان در درک و کاربرد مفاهیم مربوط به مهندسی کامپایلر
موضوع کلی: آموزش زبانهای خارجی
موضوع میانی: زبان در حوزه مهندسی
📋 سرفصلهای کتاب (100 موضوع)
- 1. مقدمهای بر آموزش زبانهای خارجی
- 2. اهمیت زبان انگلیسی در دنیای مهندسی
- 3. مهندسی کامپایلر: تعاریف و مفاهیم اولیه
- 4. چرا زبان انگلیسی برای مهندسی کامپایلر؟
- 5. مروری بر سرفصلهای دوره
- 6. آشنایی با ساختار کلی یک کامپایلر
- 7. فازهای تحلیل (Analysis Phases)
- 8. فازهای سنتز (Synthesis Phases)
- 9. مفاهیم پایهی زبانشناسی در کامپایلرها
- 10. انواع گرامرها (Grammars)
- 11. گرامرهای مستقل از متن (Context-Free Grammars - CFG)
- 12. نمادگذاری (Notation) در گرامرها
- 13. مثالهایی از گرامرهای CFG برای زبانهای برنامهنویسی
- 14. قواعد تولید (Production Rules)
- 15. اشتقاق (Derivation) و درخت اشتقاق (Parse Tree)
- 16. تحلیل لغوی (Lexical Analysis)
- 17. تعریف توکن (Token)
- 18. ماشینهای حالت متناهی (Finite Automata - FA)
- 19. ماشین حالت متناهی قطعی (Deterministic Finite Automata - DFA)
- 20. ماشین حالت متناهی غیرقطعی (Nondeterministic Finite Automata - NFA)
- 21. تبدیل NFA به DFA
- 22. عبارات منظم (Regular Expressions)
- 23. رابطه بین عبارات منظم و FA
- 24. ابزارهای تولید تحلیلگر لغوی (Lexer Generators) مانند Lex/Flex
- 25. اهمیت حذف ابهام (Ambiguity) در گرامرها
- 26. تحلیل نحوی (Syntax Analysis)
- 27. تقسیمبندی تحلیل نحوی
- 28. تجزیه از بالا به پایین (Top-Down Parsing)
- 29. تجزیه بازگشتی پیشبین (Recursive Descent Parsing)
- 30. تجزیه پیشبین (Predictive Parsing)
- 31. جدول پیشبینی (Prediction Table)
- 32. تحلیل LL(1)
- 33. تجزیه از پایین به بالا (Bottom-Up Parsing)
- 34. تجزیه شیفت-کاهش (Shift-Reduce Parsing)
- 35. پشته (Stack) در تحلیل نحوی
- 36. تجزیه LR (LR Parsing)
- 37. LR(0), SLR(1), LALR(1), LR(1)
- 38. ابزارهای تولید تحلیلگر نحوی (Parser Generators) مانند Yacc/Bison
- 39. مفاهیم ساختاری در زبانهای برنامهنویسی
- 40. ساختار جملات (Statements)
- 41. ساختار عبارات (Expressions)
- 42. محدودیتها در گرامرها
- 43. بررسی ساختار انتزاعی (Abstract Syntax Tree - AST)
- 44. نمایش AST
- 45. عملیات بر روی AST
- 46. تبدیلات AST
- 47. تحلیل معنایی (Semantic Analysis)
- 48. بررسی نوع (Type Checking)
- 49. سیستمهای نوع (Type Systems)
- 50. انواع دادهها (Data Types)
- 51. تایپهای ساده (Primitive Types)
- 52. تایپهای مرکب (Compound Types)
- 53. انواع پویا (Dynamic Typing) در مقابل انواع ایستا (Static Typing)
- 54. جبرانناپذیری (Type Coercion) و تبدیل نوع (Type Conversion)
- 55. اعلان متغیرها (Variable Declarations)
- 56. دامنه (Scope) متغیرها
- 57. اتصال نام (Name Resolution)
- 58. بررسی خطا در تحلیل معنایی
- 59. مدیریت خطا (Error Handling) در کامپایلر
- 60. تولید کد میانی (Intermediate Code Generation)
- 61. انواع کدهای میانی
- 62. نمایش سه آدرسی (Three-Address Code)
- 63. دستورالعملهای تک آدرسی (Single-Address Instructions)
- 64. نمایش گراف وابستگی (Dependency Graph)
- 65. تعبیه کدهای میانی
- 66. بهینهسازی کد (Code Optimization)
- 67. انواع بهینهسازیها
- 68. بهینهسازیهای محلی (Local Optimizations)
- 69. بهینهسازیهای سراسری (Global Optimizations)
- 70. بهینهسازیهای وابستگی داده (Data Flow Analysis)
- 71. آنالیز جریان داده (Data Flow Analysis)
- 72. بردارهای در جریان داده (Data Flow Equations)
- 73. کاهش کد ثابت (Constant Folding)
- 74. انتشار ثابت (Constant Propagation)
- 75. حذف زیرعبارات مشترک (Common Subexpression Elimination)
- 76. حذف کد مرده (Dead Code Elimination)
- 77. بازسازی حلقه (Loop Unrolling)
- 78. تخصیص ثبات (Register Allocation)
- 79. روشهای تخصیص ثبات
- 80. گراف تداخل (Interference Graph)
- 81. تکنیکهای تخصیص ثبات
- 82. تولید کد نهایی (Code Generation)
- 83. معماریهای هدف (Target Architectures)
- 84. دستورالعملهای ماشین (Machine Instructions)
- 85. نقشهبرداری کدهای میانی به دستورالعملهای ماشین
- 86. تکنیکهای تولید کد
- 87. بهینهسازیهای وابسته به معماری
- 88. مدیریت حافظه (Memory Management)
- 89. پشته فراخوانی (Call Stack)
- 90. تخصیص حافظه ایستا (Static Memory Allocation)
- 91. تخصیص حافظه پویا (Dynamic Memory Allocation)
- 92. زمان اجرا (Runtime)
- 93. مفاهیم ارثبری (Inheritance) در کامپایلرها
- 94. چندریختی (Polymorphism) و کامپایلر
- 95. کلاسها و اشیاء (Classes and Objects) در کامپایلر
- 96. دستورالعملهای شیءگرا (Object-Oriented Instructions)
- 97. ویژگیهای زبانهای برنامهنویسی مدرن
- 98. مفاهیم تابع (Function) و کامپایلر
- 99. توابع لامبدا (Lambda Functions) و کامپایلر
- 100. کلاسهای عمومی (Generics) و کامپایلر
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.