{"product_id":"writing-a-c-compiler","title":"Writing a C Compiler","description":"\u003cp\u003e\u003cb\u003eA hands-on, example-filled guide to the theory and practice of writing a C compiler: a computer program that translates code written by programmers into code the computer can read.\u003c\/b\u003e\u003c\/p\u003e\u003cp\u003eA comprehensive, hands-on tutorial to writing a C compiler: a computer program that translates code written by the programmer into code the computer can understand. By building a compiler, readers will gain invaluable knowledge about how programming languages work; knowledge that will make them better programmers. Readers are gently led step-by-step to build a small working compiler and will develop throughout the book. Writing a C Compiler offers readers an accessible, practical approach to this complex and often overly theoretical topic.\u003c\/p\u003e\u003ch3\u003eAbout the Author\u003c\/h3\u003e\u003cp\u003e\u003cb\u003eNora Sandler\u003c\/b\u003e is a software engineer. After graduating from the University of Chicago, she worked as a penetration tester at Security Innovation, and then as a compiler developer at CrowdStrike, fuelling her interest and research into how computers work under the hood. Sandler writes C Compiler tutorials and has created test programs on her popular blog (https:\/\/norasandler.com\/) to make writing a C compiler more accessible.\u003c\/p\u003e\u003cp\u003e\u003cb\u003eTable of contents \u003c\/b\u003e  \u003c\/p\u003e\u003cp\u003eIntroduction  \u003c\/p\u003e\u003cp\u003e\u003cb\u003ePart I: The Basics\u003c\/b\u003e  \u003c\/p\u003e\u003cp\u003e1. Introduction to Compilers  \u003c\/p\u003e\u003cp\u003e2. Returning an Integer  \u003c\/p\u003e\u003cp\u003e3. Unary Operators  \u003c\/p\u003e\u003cp\u003e4. Binary Operators  \u003c\/p\u003e\u003cp\u003e5. Logical and Relational Operators  \u003c\/p\u003e\u003cp\u003e6. Local Variables  \u003c\/p\u003e\u003cp\u003e7. If Statements and Conditional Expressions  \u003c\/p\u003e\u003cp\u003e8. Compound Statements  \u003c\/p\u003e\u003cp\u003e9. Loops  \u003c\/p\u003e\u003cp\u003e10. Functions  \u003c\/p\u003e\u003cp\u003e11. Static Variables  \u003c\/p\u003e\u003cp\u003e\u003cb\u003ePart II: Implementing Types\u003c\/b\u003e  \u003c\/p\u003e\u003cp\u003e12. Long Integers  \u003c\/p\u003e\u003cp\u003e13. Unsigned Integers  \u003c\/p\u003e\u003cp\u003e14. Floating-point numbers  \u003c\/p\u003e\u003cp\u003e15. Pointers  \u003c\/p\u003e\u003cp\u003e16. Arrays and Pointer Arithmetic  \u003c\/p\u003e\u003cp\u003e17. Characters and Strings  \u003c\/p\u003e\u003cp\u003e18. Supporting Dynamic Memory Allocation  \u003c\/p\u003e\u003cp\u003e19. Structures  \u003c\/p\u003e\u003cp\u003e\u003cb\u003ePart III: Optimizations\u003c\/b\u003e  \u003c\/p\u003e\u003cp\u003e20. Optimizing TACKY Programs  \u003c\/p\u003e\u003cp\u003e21. Register Allocation\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e","brand":"No Starch Press","offers":[{"title":"Paperback","offer_id":50506315726918,"sku":"9781718500426","price":5859.0,"currency_code":"INR","in_stock":true},{"title":"E-Book","offer_id":50506315759686,"sku":"9781718500426-2","price":5515.0,"currency_code":"INR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0754\/2797\/1142\/files\/51GHe72t1EL._SX376_BO1_204_203_200.jpg?v=1790326577","url":"https:\/\/cb-india.com\/products\/writing-a-c-compiler","provider":"Computer Bookshop (India) Pvt Ltd","version":"1.0","type":"link"}