Thinking Low-Level, Writing High-Level, the second volume in the
landmark Write Great Code series by Randall Hyde, covers high-level
programming languages (such as Swift and Java) as well as code
generation on 64-bit CPUsARM, the Java Virtual Machine, and the
Microsoft Common Runtime.
Today's programming languages offer productivity and portability, but
also make it easy to write sloppy code that isn't optimized for a
compiler. Thinking Low-Level, Writing High-Level will teach you to
craft source code that results in good machine code once it's run
through a compiler.
You'll learn:
How to analyze the output of a compiler to verify that your code
generates good machine code
The types of machine code statements that compilers generate for common
control structures, so you can choose the best statements when writing
HLL code
Enough assembly language to read compiler output
How compilers convert various constant and variable objects into machine
data
With an understanding of how compilers work, you'll be able to write
source code that they can translate into elegant machine code.
NEW TO THIS EDITION, COVERAGE OF:
Programming languages like Swift and Java
Code generation on modern 64-bit CPUs
ARM processors on mobile phones and tablets
Stack-based architectures like the Java Virtual Machine
Modern language systems like the Microsoft Common Language Runtime