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.

Evenbit commented: excellent resource +3
William Hemsworth commented: Very nice tutorial, I actually understood it :) +2
NicAx64 commented: nice work Narue , so you are a nasm lover aren't you me too. Keep it up. And also a suggetsion just change that font in the tutorial to courier font , really hard to read the kerning fonts. +1
sergent commented: Really nice! +0
<M/> commented: Random upvote +10
hefaz commented: Thanks but Why you prefer nasm ? Just one reason? +0
Re: Let's learn assembly! 80 80

Thank you! :)

Re: Let's learn assembly! 80 80

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:

%macro invoke 2-*

To this:

%macro scall 2-*

And you won't need to make any changes to the example programs. :)

Re: Let's learn assembly! 80 80

I just joined daniweb and i'm having trouble accessing the pdf. it says i need to register :(

Re: Let's learn assembly! 80 80

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.

Just a couple of quick notes:

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.

Re: Let's learn assembly! 80 80

Can you divided the assembly section to different assembler ground it will be must easier...

for example HLA ,NASM ,..........etc

Re: Let's learn assembly! 80 80

Just thanks.

Re: Let's learn assembly! 80 80

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.

To encourage you to do more, here is a little more feedback on your tutorial. For these, I will reference section headings and paragraphs --

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.

Re: Let's learn assembly! 80 80

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

Re: Let's learn assembly! 80 80

< knock, knock > Hello? Anyone home?? Is there a sequal on the way???

Nathan.

Re: Let's learn assembly! 80 80

Great work! This is hands down the best intro to ASM!!!! Hope to see a part II.

Re: Let's learn assembly! 80 80

Nice work :), This looks like a good tutorial and Ive never really managed to get the hang of asm, Thanks!

Re: Let's learn assembly! 80 80

Thankyou

Re: Let's learn assembly! 80 80

Why is it that nothing happens when I call prog.exe after having done what you said in the tutorial? :'(

If it's something processor specific or cpu specific or something, please tell me what to write in google to find the right manual :?:

Anyway.. thanks for the tutorial :)

Take care
-Daniel

Re: Let's learn assembly! 80 80

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.

Oh dude, just what I needed!!! Thanks alot!!!!

Re: Let's learn assembly! 80 80

The link seems to be broken

Re: Let's learn assembly! 80 80

hello everybody i just have one question how can i introduce an array in Assembly language?
I was ask to write a program that will add numbers from 10 to 20 and i need someone's help

Re: Let's learn assembly! 80 80

@jeanclaudedjahlin, please create your own thread instead of hijacking this one.

Re: Let's learn assembly! 80 80

useful pdf, thank you.

Re: Let's learn assembly! 80 80

it very good i love this pdf
thanks

Re: Let's learn assembly! 80 80

big thank you

Re: Let's learn assembly! 80 80

will it be useful to learn 86 assembly when there are 64

Re: Let's learn assembly! 80 80

You choose the assembly language that is appropriate for the target processor

Re: Let's learn assembly! 80 80

Awesome :)

Re: Let's learn assembly! 80 80

Sir! my question is that which IDE is used for assembly language programming.?

Re: Let's learn assembly! 80 80

Just use any text editor, If you are on MS-Windows then Notepad++ is a good one to use because it has color highlighting.

Re: Let's learn assembly! 80 80

But Sir! How will we compile a notepade written code into exe. Sir please kindly post its complete manual that how will i compile my code into exe.
i shall be thankfull of you Sir!

Re: Let's learn assembly! 80 80

It's not the IDE that compiles your source code, it's a program called an assembler. The IDE just provides a flashy GUI front-end to integrate it all, but for assembler it's really not needed. You write your code up in a text file, much like in an IDE, then instead of asking the IDE to run the assembler for you, you just run it directly yourself. Check out NASM, a good free assembler.

Re: Let's learn assembly! 80 80

Thank you very much!

Re: Let's learn assembly! 80 80

I am an old fan of aseembly so simple no frills just runs superfast no overheads

Be a part of the DaniWeb community

We're a friendly, industry-focused community of 1.19 million developers, IT pros, digital marketers, and technology enthusiasts learning and sharing knowledge.