Writing a C Compiler. Build a Real Programming Language from Scratch

Par : Nora Sandler
Offrir maintenant
Ou planifier dans votre panier
Disponible dans votre compte client Decitre ou Furet du Nord dès validation de votre commande. Le format ePub est :
  • Compatible avec une lecture sur My Vivlio (smartphone, tablette, ordinateur)
  • Compatible avec une lecture sur liseuses Vivlio
  • Pour les liseuses autres que Vivlio, vous devez utiliser le logiciel Adobe Digital Edition. Non compatible avec la lecture sur les liseuses Kindle, Remarkable et Sony
Logo Vivlio, qui est-ce ?

Notre partenaire de plateforme de lecture numérique où vous retrouverez l'ensemble de vos ebooks gratuitement

Pour en savoir plus sur nos ebooks, consultez notre aide en ligne ici
C'est si simple ! Lisez votre ebook avec l'app Vivlio sur votre tablette, mobile ou ordinateur :
Google PlayApp Store
  • Nombre de pages792
  • FormatePub
  • ISBN978-1-7185-0043-3
  • EAN9781718500433
  • Date de parution20/08/2024
  • Protection num.pas de protection
  • Taille12 Mo
  • Infos supplémentairesepub
  • ÉditeurNo Starch Press

Résumé

A fun, hands-on guide to writing your own compiler for a real-world programming language. Compilers are at the heart of everything programmers do, yet even experienced developers find them intimidating. For those eager to truly grasp how compilers work, Writing a C Compiler dispels the mystery. This book guides you through a fun and engaging project where you'll learn what it takes to compile a real-world programming language to actual assembly code.
Writing a C Compiler will take you step by step through the process of building your own compiler for a significant subset of C-no prior experience with compiler construction or assembly code needed. Once you've built a working compiler for the simplest C program, you'll add new features chapter by chapter. The algorithms in the book are all in pseudocode, so you can implement your compiler in whatever language you like.
Along the way, you'll explore key concepts like: Lexing and parsing: Learn how to write a lexer and recursive descent parser that transform C code into an abstract syntax tree. Program analysis: Discover how to analyze a program to understand its behavior and detect errors. Code generation: Learn how to translate C language constructs like arithmetic operations, function calls, and control-flow statements into x64 assembly code.
Optimization techniques: Improve performance with methods like constant folding, dead store elimination, and register allocation.   Compilers aren't terrifying beasts-and with help from this hands-on, accessible guide, you might even turn them into your friends for life.
A fun, hands-on guide to writing your own compiler for a real-world programming language. Compilers are at the heart of everything programmers do, yet even experienced developers find them intimidating. For those eager to truly grasp how compilers work, Writing a C Compiler dispels the mystery. This book guides you through a fun and engaging project where you'll learn what it takes to compile a real-world programming language to actual assembly code.
Writing a C Compiler will take you step by step through the process of building your own compiler for a significant subset of C-no prior experience with compiler construction or assembly code needed. Once you've built a working compiler for the simplest C program, you'll add new features chapter by chapter. The algorithms in the book are all in pseudocode, so you can implement your compiler in whatever language you like.
Along the way, you'll explore key concepts like: Lexing and parsing: Learn how to write a lexer and recursive descent parser that transform C code into an abstract syntax tree. Program analysis: Discover how to analyze a program to understand its behavior and detect errors. Code generation: Learn how to translate C language constructs like arithmetic operations, function calls, and control-flow statements into x64 assembly code.
Optimization techniques: Improve performance with methods like constant folding, dead store elimination, and register allocation.   Compilers aren't terrifying beasts-and with help from this hands-on, accessible guide, you might even turn them into your friends for life.