Thinking Low-Level, Writing High-Level.
For early PCs, most applications were written in assembly language, the low-level language of the CPU, in order to
achieve acceptable performance. Unfortunately, the current generation of programmers never had to learn assembly
language and, as a result, they often write inefficient code. Since CPU speeds are no longer increasing as rapidly as they
once did, software engineers can no longer assume that the hardware engineers will make up for sloppily written code.
The second volume in this series supplies the critical information that today's computer science students don't often
get: how to carefully choose high-level language statements to produce efficient code. The book teaches software engineers how compilers translate high-level language statements and data structures into machine code. Make informed choices and produce far better machine code - all without having to give up the productivity and portability benefits of using a high-level language.