MMIXware: A RISC Computer for the Third Millennium
by Donald E. Knuth
Publisher: Springer 2004
Number of pages: 550
MMIX is a RISC computer designed by Donald Knuth to illustrate machine-level aspects of programming. This book constitutes a collection of programs written in CWEB that make MMIX a virtual reality. Among other utilities, an assembler converting MMIX symbolic files to MMIX objects and two simulators executing the programs in given object files are provided. The latest version of all programs can be downloaded from MMIX's home page. The book provides a complete documentation of the MMIX computer and its assembly language.
Home page url
Download or read it online for free here:
(multiple PDF files)
by Ed Jorgensen - University of Nevada, Las Vegas
This text provides a reference for University level assembly language and systems programming courses. Specifically, it addresses the x86-64 instruction set for the popular x86-64 class of processors using the Ubuntu 64-bit Operating System (OS).
by Richard Mansfield - Compute! Publications
Introduction to 6502 machine language. The book starts with an introduction to how computers work, what Binary and Hex are, and how they relate to programing. Everything is covered with enough detail for a beginner to understand what they are doing.
by Dennis Yurichev - yurichev.com
Here are some of my notes about reverse engineering in English language for those beginners who would like to learn to understand x86 (which accounts for almost all executable software in the world) and ARM code created by C/C++ compilers.
by Michael Abrash - jagregory.com
This book unlocks the secrets of writing superb assembly-language code. It assumes that you're already familiar with assembly language, acquainted with the registers and instructions of the 8088, and with the use of one of the popular PC assemblers.