
Write Great Code, Volume 1, 2nd Edition
Understanding the Machine
Randall Hyde(Author)
No Starch Press
2nd Edition
Published on 31. July 2020
Book
Paperback/Softback
472 pages
978-1-7185-0036-5 (ISBN)
Description
Like the highly regarded first edition, this second edition of Understanding the Machine covers machine organisation and computer science topics like the CPU, machine architecture, memory and cache organisation, I/O and peripheral devices, and how the decoding and execution of machine instructions affects software performance. This edition has been updated to cover 64-bit machines, newer peripheral devices, larger memory systems, large-scale SSDs, and newer CPUs like those used in personal computers and tablets.
Reviews / Votes
"Sooner or later it makes sense to get a grip on what happens underneath the interpreter and compiler, even below the abstraction layer that the operating system provides. . . . This book leads you a part of the way to this knowledge. In a clear and understandable writing that makes it a joy to read."-Thomas Manthey, Amazon Reviewer
Praise for the first edition of Write Great Code, Volume 1:
"Today's programmers can hardly keep up with the race against inhumane deadlines and new technologies; therefore, they rarely have a chance to learn the basics of computer architectures and the inner-working of their programming languages. This book fills in the gaps. I strongly recommend it."
-InformIT.com
Write Great Code "isn't your typical 'teach yourself to program' book. . . It's relevant to all languages, and all levels of programming experience. . . Run, don't walk, to buy and read this book."
-Bay Area Large Installation System Administrators (BayLISA)
5/5 stars: "[Write Great Code] fills in the blanks nicely and really could be part of a Computer Science degree required reading set... Once this book is read, you will have a greater understanding and appreciation for code that is written efficiently - and you may just know enough to do that yourself. At least you will have a great start at the art of crafting efficient software."
-MacCompanion
"Great fun to read."
-VSJ Magazine
"Write Great Code: Understanding the Machine should be on the required reading list for anyone who wants to develop terrific code in any language without having to learn assembly language."
-WebServerTalk
More details
Edition
2nd Edition
Language
English
Place of publication
San Francisco
United States
Dimensions
Height: 233 mm
Width: 183 mm
Thickness: 32 mm
Weight
915 gr
ISBN-13
978-1-7185-0036-5 (9781718500365)
Copyright in bibliographic data and cover images is held by Nielsen Book Services Limited or by the publishers or by their respective licensors: all rights reserved.
Schweitzer Classification
Other editions
Additional editions

E-Book
08/2020
No Starch Press
€38.99
Available for download
Previous edition

Book
01/2004
1st Edition
No Starch Press
€40.00
Article exhausted; check for reprint
Person
Randall Hyde is the author of The Art of Assembly Language, one of the most highly recommended resources on assembly, and the three volume Write Great Code series (all No Starch Press). 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.
Content
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
Chapter 13: Computer Peripheral Buses
Chapter 14: Mass Storage Devices and Filesystems
Chapter 15: Miscellaneous Input and Output Devices
Afterword: Thinking Low-Level, Writing High-Level
Appendix A: ASCII Character Set
Glossary
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
Chapter 13: Computer Peripheral Buses
Chapter 14: Mass Storage Devices and Filesystems
Chapter 15: Miscellaneous Input and Output Devices
Afterword: Thinking Low-Level, Writing High-Level
Appendix A: ASCII Character Set
Glossary