هزینه آموزش
۳۸,۰۰۰ تومان

آموزش طراحی کامپایلر

آموزش طراحی کامپایلر

چکیده

در این آموزش می خواهیم درس کامپایلر که یکی از مباحث اصلی در علم کامپیوتر است را به صورت کامل و منطبق بر منابع علمی بروز تدریس کنیم. در این آموزش با تشریح مطالب درس و همچنین حل مثال های متعدد سعی بر توجیه کامل مخاطبین داریم. این درس یکی از دروس در کنکور کارشناسی ارشد نرم افزار نیز است، لذا این آموزش سعی در مرتفع کردن بخشی از دغدغه های داوطلبان کارشناسی ارشد نیز دارد.

مدرس
منوچهر بابایی

کارشناس ارشد مهندسی کامپیوتر - نرم افزار

مهندس منوچهر بابایی، کارشناس ارشد مهندسی کامپیوتر - نرم افزار با زمینه تحقیقاتی هوش مصنوعی هستند. ایشان سابقه آموزشی زیادی در تدریس دروس دانشگاهی رشته مهندسی کامپیوتر و فناوری اطلاعات دارند و در این زمینه کتاب‌ هایی برای دروس معماری کامپیوتر و ساختمان گسسته تالیف نموده‌اند. ایشان بر زبان‌ های برنامه نویسی سی، سی پلاس پلاس، سی شارپ، جاوا و متلب تسلط داشته و در مراکز آموزشی معتبر در این موضوعات تدریس نموده اند.

توضیحات تکمیلی

کامپایلر چیست؟

کامپایلر (Compiler) برنامه یا مجموعه ای از برنامه های کامپیوتری است که متنی از زبان برنامه نویسی سطح بالا (زبان مبدا) را به زبانی سطح پایین (زبان مقصد) تبدیل می کند. خروجی این برنامه ممکن است برای پردازش شدن توسط برنامه دیگری مثل پیوند دهنده مناسب باشد یا فایل متنی باشد که انسان نیز بتواند آن را بخواند.

عملکرد کامپایلر مانند دوبله یک فیلم خارجی است که ابتدا کل فیلم به زبان فارسی ترجمه می شود و سپس در اختیار بینندگان قرار می گیرد. کامپایلر نیز ابتدا زبان برنامه نویسی مبدا را به زبان ماشین تبدیل کرده و سپس این برنامه روی کامپیوتر اجرا می شود.

در این آموزش می خواهیم درس کامپایلر که یکی از مباحث اصلی در علم کامپیوتر است را به صورت کامل و منطبق بر منابع علمی بروز تدریس کنیم. در این آموزش با تشریح مطالب درس و همچنین حل مثال های متعدد سعی بر توجیه کامل مخاطبین داریم. این درس یکی از دروس در کنکور کارشناسی ارشد نرم افزار نیز است، لذا این آموزش سعی در مرتفع کردن بخشی از دغدغه های داوطلبان کارشناسی ارشد نیز دارد.

 
فهرست سرفصل ها و مباحث مطرح شده در این دوره آموزشی، در ادامه آمده اند:
  • درس یکم: مقدمه و معرفی کامپایلر
    • تعریف کامپایلر
    • روش های ترجمه و اجرای برنامه ها – لزوم استفاده از کامپایلر
    • جلوبندی و عقب بندی – اجرا بر روی ماشین های مختلف
    • فازهای مختلف کامپایلر (تحلیلگر لغوی، نحوی)
  • درس دوم: تحلیلگر لغوی
    • معرفی عملکرد تحلیلگر لغوی و ارتباطان با تحلیلگر نحوی
    • انواع لغات در برنامه – نشانه ها
    • عملکرد تحلیلگر لغوی
    • جدول نماد (ارتباط بین لغات و نشانه ها)
    • معرفی زبان ها و رشته ها (عملیات بر روی زبان ها، معرفی اولیه زبان ها، عبارات منظم)
    • ماشین خودکار متناهی (DFA, NFA)
    • ایجاد ماشین خودکار غیرقطعی (NFA) با روش Thompson
    • الگوریتم تبدیل NFA به DFA
    • ایجاد DFA از روی عبارت باقاعده
    • کاهش حالات در ماشین خودکار
  • درس سوم: گرامرها
    • تعریف گرامر – انواع گرامرها (سلسله مراتب چامسکی (Chomsky)
    • درختان تجزیه (اشتقاق و… )
    • گرامرهای مبهم
    • بازگشتی چپ و حذف آن
  • درس چهارم: تجزیه بالا به پایین
    • نحوه عملکرد تجزیه کننده بالا به پایین
    • مجموعه های First و FOLLOW
    • تجزیه کننده پیش بینی کننده – پیش بینی کننده بازگشتی
    • تجزیه کننده پیش بینی کننده غیربازگشتی – جدول تجزیه
    • گرامرهای (LL(1
    • تبدیل گرامر به (LL(1 (فاکتورگیری چپ – حذف بازگشتی چپ)
    • مدیریت خطا در تجزیه کننده
    • مفهوم پوشش خطا در تجزیه
  • درس پنجم: تجزیه کننده پایین به بالا
    • نحوه عملکرد تجزیه کننده پایین به بالا
    • مفهوم دستگیره (Handle)
    • معرفی تجزیه های کننده های پایین بالا (تجزیه کننده اولویت با عملگر و LR)
    • تجزیه کننده اولویت با عملگر
    • تجزیه کننده های LR
    • معرفی روش های تجزیه LR
      • گرامرهای (LR(0
      • گرامرهای (LR(1
      • گرامرهای (SLR(1
      • گرامرهای (LALR(1
    • گرامرهای مبهم و تجزیه های کننده های LR

آنچه در این آموزش خواهید دید:

آموزش ویدئویی مورد تائید فرادرس
فایل PDF یادداشت‌ های ارائه مدرس



پیش نمایش‌ها

پیش نمایش ۱: مقدمه و معرفی کامپایلر ۱۸ دقیقه

توجه: ممکن است که به خاطر سرعت پایین اینترنت شما، نمایش آنلاین با کیفیت پایین تر از کیفیت HD ویدئوی اصلی نمایش داده شوند. در این صورت آموزش را دانلود کرده و سپس مشاهده نمایید.

دانلود مستقیم پیش نمایش - حجم دانلود ۱۴ مگابایت (کلیک کنید +)
پیش نمایش ۲: تحلیلگر لغوی (الف) ۱۷ دقیقه

توجه: ممکن است که به خاطر سرعت پایین اینترنت شما، نمایش آنلاین با کیفیت پایین تر از کیفیت HD ویدئوی اصلی نمایش داده شوند. در این صورت آموزش را دانلود کرده و سپس مشاهده نمایید.

دانلود مستقیم پیش نمایش - حجم دانلود ۱۶ مگابایت (کلیک کنید +)
پیش نمایش ۳: تحلیلگر لغوی (ب) ۲۱ دقیقه

توجه: ممکن است که به خاطر سرعت پایین اینترنت شما، نمایش آنلاین با کیفیت پایین تر از کیفیت HD ویدئوی اصلی نمایش داده شوند. در این صورت آموزش را دانلود کرده و سپس مشاهده نمایید.

دانلود مستقیم پیش نمایش - حجم دانلود ۲۲ مگابایت (کلیک کنید +)
پیش نمایش ۴: تحلیلگر لغوی (پ) ۲۲ دقیقه

توجه: ممکن است که به خاطر سرعت پایین اینترنت شما، نمایش آنلاین با کیفیت پایین تر از کیفیت HD ویدئوی اصلی نمایش داده شوند. در این صورت آموزش را دانلود کرده و سپس مشاهده نمایید.

دانلود مستقیم پیش نمایش - حجم دانلود ۲۵ مگابایت (کلیک کنید +)
پیش نمایش ۵: گرامرها ۹۰ دقیقه
مشاهده آنلاین و یا دانلود رایگان این پیش نمایش، نیازمند عضویت و ورود به سایت (+) است.
پیش نمایش ۶: تجزیه بالا به پایین (الف) ۱۱ دقیقه
مشاهده آنلاین و یا دانلود رایگان این پیش نمایش، نیازمند عضویت و ورود به سایت (+) است.
پیش نمایش ۷: تجزیه بالا به پایین (ب) ۹ دقیقه
مشاهده آنلاین و یا دانلود رایگان این پیش نمایش، نیازمند عضویت و ورود به سایت (+) است.
پیش نمایش ۸: تجزیه بالا به پایین (پ) ۱۹ دقیقه
مشاهده آنلاین و یا دانلود رایگان این پیش نمایش، نیازمند عضویت و ورود به سایت (+) است.
پیش نمایش ۹: تجزیه کننده پایین به بالا (الف) ۱۴ دقیقه
مشاهده آنلاین و یا دانلود رایگان این پیش نمایش، نیازمند عضویت و ورود به سایت (+) است.
پیش نمایش ۱۰: تجزیه کننده پایین به بالا (ب) ۲۴ دقیقه
مشاهده آنلاین و یا دانلود رایگان این پیش نمایش، نیازمند عضویت و ورود به سایت (+) است.
پیش نمایش ۱۱: تجزیه کننده پایین به بالا (پ) ۱۶ دقیقه
مشاهده آنلاین و یا دانلود رایگان این پیش نمایش، نیازمند عضویت و ورود به سایت (+) است.
پیش نمایش ۱۲: تجزیه کننده پایین به بالا (ت) ۱۲ دقیقه
مشاهده آنلاین و یا دانلود رایگان این پیش نمایش، نیازمند عضویت و ورود به سایت (+) است.

راهنمای تهیه آموزش ها

آیا می دانید که تهیه یک آموزش از فرادرس و شروع یادگیری چقدر ساده است؟

راهنمایی بیشتر ( +)

در مورد این آموزش یا نحوه تهیه آن سوالی دارید؟
  • با شماره تلفن واحد مخاطبین ۵۷۹۱۶۰۰۰ (پیش شماره ۰۲۱) تماس بگیرید. - تمام ساعات اداری
  • با ما مکاتبه ایمیلی داشته باشید (این لینک). - میانگین زمان پاسخ دهی: ۳۰ دقیقه


اطلاعات تکمیلی

نام آموزش آموزش طراحی کامپایلر
ناشر فرادرس
شناسه اثر ۸–۱۲۴۵۲–۰۵۷۶۵۸ (ثبت شده در مرکز رسانه‌های دیجیتال وزارت ارشاد)
کد آموزش FVSFT104
مدت زمان ۱۴ ساعت و ۵۴ دقیقه
زبان فارسی
نوع آموزش آموزش ویدئویی     (کیفیت HD - مورد تایید فنی فرادرس)
حجم دانلود ۹۰۷ مگابایت     (کیفیت ویدئو HD‌ با فشرده سازی انحصاری فرادرس)



نظرات

تا کنون ۲,۶۹۲ نفر از این آموزش استفاده کرده اند و ۲۹ نظر ثبت شده است.
ممزر
ممزر

good
پاسخ به نظر

صدف
صدف

سرعت تدریس و روند آموزش عالی بود. من خیلی راضی بودم. من خیلی از آموزش هاتون رو هم به بستگانم معرفی کردم.
پاسخ به نظر

زهراسادات
زهراسادات

خوب و مفید بود. اما باید بیشتر تو مسیر کسب و کار این آموزشا رو منتشر کنید. چون بقیه چیزا رو ما خودمونم می تونیم یاد بگیریم.
پاسخ به نظر

زهرا
زهرا

من تغییر رشته دادم، برای ارشد می خواستم امتحان بدم، خیلی با این آموزش تونستم وارد این حرفه بشم. یعنی همه چی مو به مو گفته شد.
پاسخ به نظر

شقایق
شقایق

سلام من برای امتحانم گرفتم خیلی خوبه، فقط تئوری نیست، مسئله هم حل می کنه.
پاسخ به نظر

مهدی
مهدی

با توجه به اینکه استاتید درس نمیدهند و برای یادگیری نیازمند یک آموزش خوب بودیم، من این آموزش رو تهیه کردم و تونستم امتحانم رو به خوبی پاس کنم.
پاسخ به نظر

مهراد
مهراد

خیلیییی خوبه. کامل و جامع ، ریز جزییات هم گفته شد.. با تشکر
پاسخ به نظر

علیرضا
علیرضا

سلام واقعا باید تشکر کنم که فرادرس در حوزه دروس رشته مهندسی کامپیوتر از مدرسین توانمندی استفاده میکنه. این آموزش هم بسیار عالی بود.
پاسخ به نظر

حسن
حسن

خیلی خوب بود. با جزییات و مقدمه مباحث را توضیح می دادند.
پاسخ به نظر

محسن
محسن

خیلی درگیر نظریه زبان ها شده بود. به نظرم میشد که خیلی خلاصه تر مطرح میشد و در عوض به بقیه قسمت ها وقت بیشتری اختصاص داده میشد و یا اینکه مطالب بیشتری پوشش داده میشد. تولید کد میانی و پایانی و تحلیل معنایی از بخش های مهم کامپایلره نمیدونم چرا این مطالب پوشش داده نشده .تقریبا همه ی مطالب گفته شده در ین اموزش مباحث میان ترم محسوب میشوند.
پاسخ به نظر

علیرضا
علیرضا

سلام دوستان. من این آموزش رو ترم شش کامپیوتر به طور کامل دیدم و ازش راضی بودم. مطالب درسی کلاس درس به طور کامل تو این دوره پوشش داده شده بود و استاد تسلط کامل تو ارائه مباحث درسی رو داشتند. فقط یه توصیه ای به همه دوستانی که قصد خرید این آموزش رو دارند می کنم و اون هم اینه که این درس رو برای شب امتحان نذارید. چون مطالبش رو نمیشه یک شبه حفظ کرد و مثل ریاضیات نیازمند تمرین و تکرار داره. در کل از خریدم راضی بودم.
پاسخ به نظر

captainhb
captainhb

خوب بود
پاسخ به نظر

مجتبی
مجتبی

باسلام وخسته نباشید خدمت فرا درس و استاد عزیز
بسیار عالی کامل وجامع بود برای شروع اموزش ترس زیادی داشتم ولی با اولین اموزش دیدم همه چیز به خوبی بیان شده و قابل فهم هستش

پاسخ به نظر

علی
علی

انتقال مطالب بسیار ضعیف
پاسخ به نظر

مصطفی
مصطفی

با سلام و عرض ادب من واقعا به همچین آموزش کاربردی نیاز داشتم چون رشته تحصیلیم مهندسی نرم افزار است .پیش نمایش رو نگاه کردم مطالبی که باید رو تا اون قسمت پوشش داده بودید فهرستم که همین رو نشون میداد ممنونم از شما و فرادرس بابت این اموزش.
پاسخ به نظر

ali
ali

باسلام و خسته نباشید و تشکر بابت سایت مفیدتون. اموزش خیلی خوب و کاملی بود . راضی بودم در کل .مطالب بخوبی توضیح و تشریح شده بودن همراه با جزییات و مثال زیاد برای هربخش. ولی بنظرم بهتر بود برای هربخشی که چندتا مثال اورده بودن یکم تعداد مثال ها زیاد بود ..یعنی شاید دو یه سه مثال حل میشد که باهم تفاوتی نداشتن و نکته ی جدیدی نمیشد ازشون یاد گرفت واس همین اموزش یکم طولانی و حوصله سربر شده. میتونست با حذف بعضی از قسمت های اضافی جمع و جورتر بشه (مخصوصا برای اینکه شب امتحان کار راحت تر باشه )و ازاینی که هست هم بهتر بشه . البته الانشم خیلی خوب و مفیده . یکی دیگه هم اینکه مبحث First و Follow بنظرم من یکم گنگ توضیح داده شده که البته بخاطر مشکل بودن فهمش طبیعیه ولی بنظرم میشد ساده تر از این هم بیان بشه. یکی دیگه چیزایی که خیلی مفید بود هم اینه که مباحث مربوط به نظریه زبان ها و ماشین ها در ابتدای بحث تا حد نیاز برای این درس یاداوری میشن که این برای کسایی که این درسو پاس نکردن یا مطالبشو فراموش کردن خیلی میتونه مفید باشه.
پاسخ به نظر

fatima
fatima

من این دوره رو تهیه کردم و واقعا واسم مفید بود و درس کامپایلر رو با نمره بالا پاس کردم
خیلی از مباحث رو ساده توضیح دادن و چندین مثال واسش زدن
تشکر می کنم از استاد بابایی مدرس خوب فرادرس

پاسخ به نظر

عرفان
عرفان

اصلا استاد خوبی نیستن
پیشنهاد نمی کنم

پاسخ به نظر

reza
reza

راضی نبودم ، هر فیلمو باید ده بار میزدم عقب تا بفهمم چی کار کرده ، کم توضیح داده بعضی از مثال هارو
پاسخ به نظر

سیران
سیران

ممنون
خیلی عالی تدریس شده
ای کاش کل سر فصل کنکور ارشد مربوط به درس کامپایلر را پوشش می دادید

پاسخ به نظر

دنی
دنی

با سلام،
اگر برای استاد مقدور باشد همین درس طراحی کامپایلر رو تکمیلی اش ارائه شود (به صورت عملی)
یعنی به صورت عملی و در یک زبان برنامه نویسی همین مفاهیم که آموزش داده شده، اینبار قدم به قدم پیاده سازی شود.
آن وقت تئوری در کنار عملی واقعا درک مطلب بالا میره و از تئوری بیرون خواهیم آمد.
و کاربردی میشه. یعنی یک کامپایلر هم طراحی کرده باشیم.

پاسخ به نظر

سجاد
سجاد

خووووب بود
پاسخ به نظر

sana
sana

سلام خیلی عالی بود ممنون. البته به نظر می رسه یکی دو فصل دیگم باید به مباحث اضافه بشه.
پاسخ به نظر

حسن
حسن

سلام.
در این دوره ی آموزشی مثال های متنوعی بررسی شده و تدریس استاد منوچهر بابایی واقعا عالی بود. مطالب به سادگی آموزش داده می شود.
با آرزوی موفقیت برای دانش پذیران سایت فرادرس و استاد ارجمند، جناب آقای منوچهر بابایی.

پاسخ به نظر

دلارام
دلارام


ممنون از تدريس خوبتون.

پاسخ به نظر

پویا
پویا

سلام.

بی صبرانه منتظر بودیم.

پاسخ به نظر

تبسم
تبسم

سلام. خدا قوت.

کارهاتون خیلی عالی و مفید هست.

پیشنهادی که دارم اینکه برای تمامی دروسی که اساتید عزیز فرادرس آموزش میدن لطفا نام دروس پیش نیازشون رو در همون صفحه ارائه درس مورد نظر بیان کنن.

بانهایت تشکر از شما.

پاسخ به نظر

hamidreza
hamidreza

سلام.

بی صبرانه منتظر ارایه این درس بودیم.

با تشکر.

پاسخ به نظر

abbasi
abbasi

سلام. خدا قوت.

بی صبرانه منتظرش بودم.

سپاس فراوان. روزخوش.

پاسخ به نظر



برچسب‌ها: Ambiguous grammars | Code Generation | Compiler | Derivation Tree | DFA | first | follow | handle | Intermediate Code Generation | Left recursion | Lexical Analysis | NFA | parser | Predictive parser | regular exertion | Semantic Analysis | Syntax Analysis | thompson | top down parsing | استفاده از کامپایلر | استفاده از مفسر | الگوریتم تبدیل NFA به DFA | انواع گرامر | ایجاد DFA | ایجاد ماشین خودکار غیرقطعی | بازگشتی چپ | برنامه اسکنر | برنامه سطح بالا | برنامه‌نویسی | بهینه‌سازی کد میانی | پارسر | پوشش خطا در تجزیه کننده | پیچیدگی زمانی اسکنر | تابع firstterm | تابع lastterm | تبدیل NFA به DFA | تجزیه بالا به پایین | تجزیه پایین به بالا | تجزیه کننده پیشگو | تجزیه کننده پیشگوی بازگشتی | تحلیل‌ لغوی | تحلیل نحوی | تحلیلگر لغوی | تحلیلگر نحوی | تحلیلگرمعنایی | تعریف کامپایلر | تولید کد میانی | تولید کد نهایی | جدول نماد | جدول نمادها | خطا پرداز | خطای panic mode | خطای phrase level | درخت تجزیه | دستگیره | رفع خطای level phrase | رفع خطای panic mode | روش ساخت اسکنر | روش طراحی اسکنر | زبان‌های منظم | ساخت اسکنر | طراحی اسکنر | طراحی کامپایلر | عبارات منظم | عبارت باقاعده | فاکتورگیری چپ | کامپایلر | کد میانی | کد نهایی | گرامر | گرامرهای مبهم درخت اشتقاق | گرامرهای منظم | لزوم استفاده از کامپایلر | ماشین حالت متناهی قطعی | ماشین خودکار متناهی | مجموعه های اول | مجموعه های پیرو | محاسبه توابع first | محاسبه توابع follow | محیط‌های برنامه‌نویسی | مدیریت خطادر تجزیه کننده

آموزش طراحی کامپایلر

تعداد دانشجو
۲,۶۹۲ نفر
۷۲ نفر در یک ماه اخیر
مدت زمان
۱۴ ساعت و ۵۴ دقیقه
هزینه آموزش
۳۸,۰۰۰ تومان
محتوای این آموزش
۲۹ بازخورد (مشاهده نظرات)