Author Topic: Instructions Handbook  (Read 8084 times)

Offline Edowyth

  • Jr. Member
  • *
  • Posts: 2
Instructions Handbook
« on: February 03, 2010, 01:09:03 PM »
I've had some experience with assembler (a class in college, operating systems, where we were required to write a few very small functions in a MASM-like simplified assembly language) but need more information about the commands given in the documentation command list ... a simple (this function adds the contents of the register and memory location, storing the result in the register) explanation for each type would be sufficient.

Is there a book/available documentation online that anyone knows of that allows for this basic information without regarding the reader as a total newbie to the concepts of assembly languages and modern architectures?

Thanks! ;)

Offline Frank Kotler

  • NASM Developer
  • Hero Member
  • *****
  • Posts: 2667
  • Country: us
Re: Instructions Handbook
« Reply #1 on: February 03, 2010, 07:25:36 PM »
Intel and AMD manuals are the authoritative source. At one time, there was an instruction reference as an appendix to the Nasm manual. It became badly outdated when the 64-bit instructions were supported, and as we didn't have anyone willing to maintain it, it was removed - what you find in the Nasm manual now is just a list, no description. I "rescued" that section of the manual, and put it here:

http://home.myfairpoint.net/fbkotler/nasmdocr.html

One of these days, maybe I'll write a "newbie's index" into it, covering the dozen or so most commonly used instructions...

Best,
Frank


Offline Edowyth

  • Jr. Member
  • *
  • Posts: 2
Re: Instructions Handbook
« Reply #2 on: February 04, 2010, 04:12:58 AM »
Thanks, I'll have a look at the manuals for Intel and AMD...and I'll take a gander at the NASM manual as well.

Just a side comment:  documented code is easy-to-maintain and easy-to-use...as this is meant to be a good, well documented open source alternative to expensive assemblers I'd expect that the primary interface (the commands used in the language) would at least have a programmers manual.  Anyway, I'm kind of disappointed to have to go to other sources to find this information, but extremely pleased with your response time and thorough answer.  Once I've developed my own documentation for the commands found here, I'll post it...but it might be a while since collation and understanding will take time from the primary responsibility.  I'll also check back to see if anyone else (with more experience) has had the same insight and decided to rectify the issue.

</rant>