I'm trying to find some references in regards to x86 Assembly languages. Tutorials/Examples to help my understanding. -Thanks
+4
A:
- Programming from the Ground Up (free book, highly recommended)
- x86 Assembly (wikibooks.org)
- Essential Resources for x86 Programmers
wbowers
2008-10-18 08:06:18
yea, I've been reading the x86 wikibook
Dacto
2008-10-18 08:07:18
+3
A:
The best, most comprehensive source of Assembly I've seen is the "Art of Assembly Language" book. It's a free download, in several versions.
idan315
2008-10-18 08:19:49
if you're really interested in learning assembler then you'd know that anything that uses "high level assembly" is a waste of time, skip this book and look for something that will teach you the low level assembly.Assembly Language for Intel-Based Computers by Kip Irvine is a pretty decent book
nelsonslament
2009-01-07 02:14:44
+1
A:
I recommend Roby's PC Assembly Tutorial Lesson. It's also available for download. It contains diagrams and examples.
"This assembly lesson is for x86 specific, i.e. for Intel 8088, 80286, 80386, etc. Yes, it is compatible with your Pentium or Pentium III. AMD users could also use this tutorial as well because I cover only the basics. I assume that you have some grasp on some programming language like Pascal, C or C++. I don't want to go over the basic concepts of programming all over again."
- Preliminary lesson -- Low Level Basic Concepts
Talks about registers, flags, memory, stacks, and interrupts. Don't worry about that too much. You might be confused with so many concepts. However, as you follow the lesson, I think every concepts should be clear enough. - Chapter 1 -- COM program structure
Begin your journey in assembly by observing the simplest program structure. - Chapter 2 -- Variables in Assembly
Discover the unique concept of variables in assembly language. The notion is far different than that of the normal high level programming language. I also explain how mov instruction works. - Chapter 3 -- Arithmetic Instructions
How can we perform some arithmetic in assembly? - Chapter 4 -- Bitwise Logic, part 1
Using and, or, and xor to perform various logical tasks, including bit masking and flipping. - Chapter 5 -- Bitwise Logic, part 2
Bit shifting and rolling can be useful in aiding bit masking set forth in the next chapter. - Chapter 6 -- Branching
Branch is essential for all programs. Let's try some assembly branching instructions to improve the logic of our programs. - Chapter 7 -- Loop
The loop instruction in assembly can be useful to resemble higher level programming language construct. - Chapter 8 -- Interrupt Essentials
Using common system interrupt services to do screen output and takes input. - Chapter 9 -- Stacks Using push and pop and knowing how the stack behaves. Some details about tiny memory mode is explained here.
- Chapter 10 -- Making Subroutines
Using subroutines to mimic structured programming approach. - Chapter 11 -- Macros
Using macros. - Chapter 12 -- Array Access
See how assembly provides a very crude array access instructions. - Chapter 13 -- Basic String Instructions
Using various string instructions: movs, lods, cmps, scas, and stos. - Chapter 14 -- Structures
Using structures like the ones in high-level languages. The structure in assembly is equivalent to struct in C/C++ and record in Pascal. - Chapter 15 -- A Bit of Theory
Addressing modes and memory modes explained plus Computer Architecture 101.
splattne
2008-10-18 09:28:28
+2
A:
For reference, the Intel IA-32 reference manuals are the definitive source.
Paul Nathan
2008-10-18 13:22:12
IIRC there is a IA-32 only version of those PDF's (I've got a copy at home). does anyone know where there is a link to them?
BCS
2009-03-05 17:29:58