E-Book Overview
If you've asked someone the secret to writing efficient, well-written software, the answer that you've probably gotten is "learn assembly language programming." By learning assembly language programming, you learn how the machine really operates and that knowledge will help you write better high-level language code. A dirty little secret assembly language programmers rarely admit to, however, is that what you really need to learn is machine organization, not assembly language programming. Write Great Code Vol I, the first in a series from assembly language expert Randall Hyde, dives right into machine organization without the extra overhead of learning assembly language programming at the same time. And since Write Great Code Vol I concentrates on the machine organization, not assembly language, the reader will learn in greater depth those subjects that are language-independent and of concern to a high level language programmer. Write Great Code Vol I will help programmers make wiser choices with respect to programming statements and data types when writing software, no matter which language they use.
E-Book Content
toc
Write Great Code: Understanding the Machine, Volume I by Randall Hyde
ISBN:1593270038
No Starch Press © 2004 (410 pages) This first volume teaches important concepts of machine organization in a languageindependent fashion, giving programmers what they need to know to write great code in any language, without the usual overhead of learning assembly language.
Table of Contents Write Great Code—Understanding the Machine, Volume I Chapter 1
- What you Need to Know to Write Great Code
Chapter 2
- Numeric Representation
Chapter 3
- Binary Arithmetic and Bit Operations
Chapter 4
- Floating-Point Representation
Chapter 5
- Character Representation
Chapter 6
- Memory Organization and Access
Chapter 7
- Composite Data Types and Memory Objects
Chapter 8
- Boolean Logic and Digital Design
Chapter 9
- CPU Architecture
Chapter 10 - Instruction Set Architecture Chapter 11 - Memory Architecture and Organization Chapter 12 - Input and Output (I/O) Appendix A - ASCII Character Set Index List of Figures List of Tables
file:///Z|/No%20Starch%20Press/(No%20Starch)%20Write%20Great%20Code%20Vol.%20I%20(2004)/9599final/toc.html [18.12.2007 16:59:57]
backcover
Back Cover 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 gr