کتاب الکترونیکی

مهندسی یک کامپایلر

Engineering a compiler

دانلود کتاب Engineering a compiler (به فارسی: مهندسی یک کامپایلر) نوشته شده توسط «Keith Cooper – Linda Torczon»


اطلاعات کتاب مهندسی یک کامپایلر

موضوع اصلی: فن آوری

نوع: کتاب الکترونیکی

ناشر: Morgan Kaufmann

نویسنده: Keith Cooper – Linda Torczon

زبان: English

فرمت کتاب: pdf (قابل تبدیل به سایر فرمت ها)

سال انتشار: 2004

تعداد صفحه: 353

حجم کتاب: 2 مگابایت

کد کتاب: 9781558606982 , 155860698X

نوبت چاپ: 1

توضیحات کتاب مهندسی یک کامپایلر

تکثیر پردازنده‌ها، محیط‌ها و محدودیت‌های سیستم‌ها، فناوری کامپایلر را به تنظیمات متنوع‌تری تبدیل کرده است و نقش کامپایلر و نویسنده کامپایلر را تغییر می‌دهد. دیگر سرعت اجرا تنها معیار قضاوت کدهای کامپایل شده نیست. امروزه، ممکن است کد بر اساس کوچک بودن، میزان مصرف انرژی، فشرده سازی آن یا تعداد خطاهای صفحه قضاوت شود. در این محیط در حال تکامل، وظیفه ساخت یک کامپایلر موفق به توانایی نویسنده کامپایلر در ایجاد تعادل و ترکیب الگوریتم‌ها، بینش‌های مهندسی و برنامه‌ریزی دقیق متکی است. نویسنده کامپایلر امروزی باید مسیری را در فضای طراحی انتخاب کند که پر از جایگزین های متنوع است که هر کدام هزینه ها، مزایا و پیچیدگی های متفاوتی دارند. مهندسی یک کامپایلر این فضای طراحی را با ارائه برخی از راه‌های حل این مشکلات و محدودیت‌هایی که هر یک از این راه‌حل‌ها را جذاب کرده است، بررسی می‌کند. با درک پارامترهای مسئله و تأثیر آنها بر طراحی کامپایلر، نویسندگان امیدوارند که هم عمق مشکلات و هم وسعت راه حل های ممکن را منتقل کنند. هدف آنها این است که مجموعه وسیعی از مطالب را پوشش دهند تا به خوانندگان نشان دهند که مبادلات واقعی وجود دارد و تأثیر آن انتخاب ها می تواند هم ظریف و هم گسترده باشد. نویسندگان کیت کوپر و لیندا تورکزون هم هنر و هم علم ساخت کامپایلر را منتقل می‌کنند و بهترین الگوریتم‌ها را برای پاس‌های اصلی یک کامپایلر نشان می‌دهند. متن آنها برنامه درسی را برای یک دوره مقدماتی در ساخت کامپایلر مجدداً متعادل می کند تا مسائلی را که در عمل فعلی ایجاد می شود منعکس کند. تمرکز بر قسمت پشتی کامپایلر که تمرکز تحقیق و توسعه در دهه گذشته را منعکس می کند. از تئوری به خوبی توسعه یافته از اسکن و تجزیه برای معرفی مفاهیمی استفاده می کند که نقش مهمی در بهینه سازی و تولید کد دارند. دانش‌آموز را با بهینه‌سازی از طریق تجزیه و تحلیل جریان داده، فرم SSA و انتخابی از بهینه‌سازی‌های اسکالر آشنا می‌کند. بر این پیشینه برای آموزش روش‌های مدرن در تولید کد بنا می‌شود: انتخاب دستورالعمل، زمان‌بندی دستورالعمل، و تخصیص ثبت. نمونه هایی را در چندین زبان برنامه نویسی مختلف ارائه می کند تا مفهوم را به بهترین شکل نشان دهد. Â · تمرینات پایان فصل را با راه حل های آنلاین در دسترس مربیان ارائه می دهد.


The proliferation of processors, environments, and constraints on systems has cast compiler technology into a wider variety of settings, changing the compiler and compiler writer’s role. No longer is execution speed the sole criterion for judging compiled code. Today, code might be judged on how small it is, how much power it consumes, how well it compresses, or how many page faults it generates. In this evolving environment, the task of building a successful compiler relies upon the compiler writer’s ability to balance and blend algorithms, engineering insights, and careful planning. Today’s compiler writer must choose a path through a design space that is filled with diverse alternatives, each with distinct costs, advantages, and complexities. Engineering a Compiler explores this design space by presenting some of the ways these problems have been solved, and the constraints that made each of those solutions attractive. By understanding the parameters of the problem and their impact on compiler design, the authors hope to convey both the depth of the problems and the breadth of possible solutions. Their goal is to cover a broad enough selection of material to show readers that real tradeoffs exist, and that the impact of those choices can be both subtle and far-reaching. Authors Keith Cooper and Linda Torczon convey both the art and the science of compiler construction and show best practice algorithms for the major passes of a compiler. Their text re-balances the curriculum for an introductory course in compiler construction to reflect the issues that arise in current practice. ·Focuses on the back end of the compiler-reflecting the focus of research and development over the last decade. ·Uses the well-developed theory from scanning and parsing to introduce concepts that play a critical role in optimization and code generation. ·Introduces the student to optimization through data-flow analysis, SSA form, and a selection of scalar optimizations. ·Builds on this background to teach modern methods in code generation: instruction selection, instruction scheduling, and register allocation. ·Presents examples in several different programming languages in order to best illustrate the concept. ·Provides end-of-chapter exercises, with on-line solutions available to instructors.

دانلود کتاب «مهندسی یک کامپایلر»

مبلغی که بابت خرید کتاب می‌پردازیم به مراتب پایین‌تر از هزینه‌هایی است که در آینده بابت نخواندن آن خواهیم پرداخت.

📖 خرید این کتاب

برای دریافت فایل و اطلاع از قیمت، روی یکی از دکمه‌های زیر کلیک کنید تا پیام آماده برای شما ارسال شود:

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