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 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 Charles W. Kann - Gettysburg College
This book introduces students to assembly language programming in MIPS. It covers basic operators and instructions, subprogram calling, loading and storing memory, program control and the conversion of the assembly language program into machine code.
by Randall Hyde - No Starch Press
Presents assembly language from the high-level point of view, so you can start writing meaningful programs within days. This is the most-often recommended book on 80x86 assembly language programming in newsgroups, on web sites, and by word of mouth.