| | |
Let's learn assembly!
![]() |
Just to note that there's a bug in the code near the end. I just noticed that I intended to use 'invoke' as the subroutine macro, but was too used to my usual 'scall' when I wrote the programs. Change this:
To this:
And you won't need to make any changes to the example programs.
Assembly Syntax (Toggle Plain Text)
%macro invoke 2-*
Assembly Syntax (Toggle Plain Text)
%macro scall 2-*
I'm here to prove you wrong.
•
•
•
•
Just for fun, I wrote up a quick tutorial for basic assembly. At present, it's only in the form of a PDF document, but I'll eventually get around to adding it to my website.
o You might want to talk about the structure of the CPU first before giving ANY code.
o You might want to describe an intruction before you use it in a code listing.
o What about comments beside the code?
o Remove sentences that don't contribute to learning assembly.
o Maybe split this into about 3 sections/chapters?
A really good start!
Nathan.
while (CPU is present) {some assembly required}
•
•
•
•
Just for fun, I wrote up a quick tutorial for basic assembly. At present, it's only in the form of a PDF document, but I'll eventually get around to adding it to my website.
Prerequisites:
o Well, you know what they say about assumptions.

Notes about the Tutorial
o P2 - "inconjunction"
o Maybe give a link where they can get GCC?
Basic Components (.data section)
o In P3, the sentence about dq and dt -- do you need it?
o Code comments are inconsistent.
o Leaves a question open of how many bytes are allocated.
BETTER:
myvar: ; Declare a variable
myvar: db ; Initialize the variable
myvar: db ‘Hello, world!’,10,0 ; Allocate 15 bytes (this is a C-style string)
Registers
o P2 - "The four registers break down" which four??
The rest of the document gets better, so I'll stop here.
Nathan.
while (CPU is present) {some assembly required}
•
•
Join Date: Jun 2007
Posts: 1
Reputation:
Solved Threads: 0
Microsoft’s (CPR) critical problem resolution platforms team's escalation engineers are writing blogs that help people understand assembly in a real world windows environment. The blogs contain a lot of assembly annotation and cover advanced debugging of the windows environment without source in some cases. I think you will find it’s worth a visit.
http://blogs.msdn.com/ntdebugging
http://blogs.msdn.com/ntdebugging
![]() |
Similar Threads
- Where can i learn about assembly language (Assembly)
- Want to get started in Assembly (Assembly)
- Introduction to 80 x 86 Assembly Language and Computer Architecture - no CD - help (Assembly)
- Questions about assembly and boolean algebra (Assembly)
- Just bought an assembly book and having problems with basic stuff. (Assembly)
- how long does it take to learn assembler and how difficult is it? (Assembly)
Other Threads in the Assembly Forum
- Previous Thread: Why did I still get the error "Divide overflow"
- Next Thread: Win32 NASM compile probs with nasmw + lcclnk
| Thread Tools | Search this Thread |





