Machine Language for Beginners
by Richard Mansfield
Publisher: Compute! Publications 1987
Number of pages: 350
A very good overview of the basics of 6502 Machine Language. The book starts with an introduction to how computers work, what Binary and Hex are, and how they relate to programing. All the basics are covered with enough detail for a beginner to understand what they are doing.
Home page url
Download or read it online for free here:
by Paul A. Carter
The book discusses how to program the 80386 and later processors in protected mode. The tutorial has extensive coverage of interfacing assembly and C code and so might be of interest to C programmers who want to learn about how C works under the hood.
by David Salomon - Prentice Hal
Comprehensive book on the design of assemblers and loaders. It covers one and two-pass assemblers, absolute and relocatable object files, multiple location counters, local labels, macros, conditional assembly, listing file, disassemblers, and loaders.
by Darmawan Salihun - A-List Publishing
Explaining security vulnerabilities, possible exploitation scenarios, and prevention in a systematic manner, this guide to BIOS exploitation describes the reverse-engineering techniques used to gather information from BIOS and expansion ROMs.
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.