assemblyx86

Assembly learning resources?


I'm looking for a good, concise, structured way to start learning x86 ASM. I have experience with Perl, Python, and C/C++, and I've been wanting to 'get under the hood' so to speak for quite awhile now but every time I research it I find nothing but confusing, conflicting, and largely out of date information.

I've messed with MASM, FASM, HLA, and a few other things I've found just googling around, but none of them seem to offer what I'm looking for: a quick introduction with good information into the nitty gritty low level world of ASM.

I don't want things like HLA that give you things like stdout.put(), etc. I want to be able to see actual interrupts being called, and learn how everything does what it does. Any advice?

(Editor's note: resource-request questions are off-topic these days.
Some good tutorials and guides are linked in the x86 tag wiki.)


Solution

  • There is the definite bible of Assembly: Art of Assembly.What is more, it is freely available online!It is a bit out of date, which is good since you will be able to learn the basics without diving into the terribly complicated new "features" only useful for operating systems.
    Art of Assembly
    (source: computer-books.us)

    A few tips:

    References:

    A quick hello world tutorial to get you started on linux.

    The bios functions(actually interrupt calls).