Write Great Code: Understanding the Machine, Volume I

  • 8h 54m
  • Randall Hyde
  • No Starch Press
  • 2004

This, the first volume in Randall Hyde’s Write Great Code series, dives into machine organization without the extra overhead of learning assembly language programming. Written for C/C++, VB, Pascal, Java, and other high-level language programmers, Volume I, “Understanding the Machine,” fills in the low-level details of machine organization that are often left out of computer science and engineering courses. Learn:

  • How the machine represents numbers, strings, and high-level data structures, so you’ll know the inherent cost of using them.
  • How to organize your data, so the machine can access it efficiently.
  • How the CPU operates, so you can write code that works the way the machine does.
  • How I/O devices operate, so you can maximize your application’s performance when accessing those devices.
  • How to best use the memory hierarchy to produce the fastest possible programs.

Great code is efficient code. But before you can write truly efficient code, you must understand how computer systems execute programs and how abstractions in programming languages map to the machine’s low-level hardware. After all, compilers don’t write the best machine code; programmers do. The information in this first volume of the Write Great Code series gives you the foundation upon which all great software is built.

About the Author

Randall Hyde is the author of The Art of Assembly Language (No Starch Press), one of the most highly recommended resources on assembly. He is also the co-author of The Waite Group’s MASM 6.0 Bible. He has written for Dr. Dobb’s Journal, Byte, as well as professional journals.

In this Book

  • What you Need to Know to Write Great Code
  • Numeric Representation
  • Binary Arithmetic and Bit Operations
  • Floating-Point Representation
  • Character Representation
  • Memory Organization and Access
  • Composite Data Types and Memory Objects
  • Boolean Logic and Digital Design
  • CPU Architecture
  • Instruction Set Architecture
  • Memory Architecture and Organization
  • Input and Output (I/O)
SHOW MORE
FREE ACCESS