Linux Format forums Forum Index Linux Format forums
Help, discussion, magazine feedback and more
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Learning Assembly

 
Post new topic   Reply to topic    Linux Format forums Forum Index -> Programming
View previous topic :: View next topic  
Author Message
PythonRulz



Joined: Mon Feb 05, 2007 8:24 pm
Posts: 2

PostPosted: Mon Feb 05, 2007 8:26 pm    Post subject: Learning Assembly Reply with quote

Ok, so I decided I want to learn assembly. What do I need to start writing programs with it? is there a good tutorial you recommend?

I am quite a confident programmer, I use C#, Python and C++ regularly
Back to top
View user's profile Send private message
GMorgan
LXF regular


Joined: Thu Jan 12, 2006 6:58 pm
Posts: 684
Location: South Wales, UK

PostPosted: Mon Feb 05, 2007 8:32 pm    Post subject: RE: Learning Assembly Reply with quote

NASM is where it is at. All you need is that, VIM and the linker available in Linux as standard.

There is a book on it here for free

http://webster.cs.ucr.edu/AoA/index.html

I'd avoid HLA and focus on the real stuff. Perhaps give MikeOS a look (written by LXFs very own Mike Saunders).

The focus is very different in ASM to the languages you mention above. C is a decent abstraction but the others are a fair bit away.
Back to top
View user's profile Send private message
M-Saunders
LXF regular


Joined: Mon Apr 11, 2005 1:14 pm
Posts: 2893

PostPosted: Tue Feb 06, 2007 9:52 am    Post subject: RE: Learning Assembly Reply with quote

As GMorgan says, NASM is the tool you want (to assemble your code into executable format). You don't have to use Vim -- I use Nano with some x86 syntax highlighting Smile

Try these tutorials:

http://asm.sourceforge.net/intro/Assembly-Intro.html

http://docs.cs.up.ac.za/programming/asm/derick_tut/

Those show you how to write assembly programs in Linux. You'll also need a general guide to x86 instructions; Wikibooks should get you started:

http://en.wikibooks.org/wiki/X86_Assembly

Good luck!

M
Back to top
View user's profile Send private message Visit poster's website
insanefido



Joined: Tue Feb 13, 2007 11:36 pm
Posts: 4
Location: The Mothership

PostPosted: Tue Feb 13, 2007 11:48 pm    Post subject: Reply with quote

It was good to see an article on assembly coding in the magazine albeit a seemingly one off. It seems to be a sadly neglected art in the Linux world while undergoing a resurgence on the other major x86 OS. It is the only code I understand as those high level languages make my head spin.

The FASM and YASM assemblers are also worth checking out especially if you wish to code for AMD64 as NASM does not support this.
Back to top
View user's profile Send private message
mjcpk



Joined: Thu Feb 01, 2007 12:24 am
Posts: 10

PostPosted: Thu Feb 15, 2007 10:56 pm    Post subject: Reply with quote

So, what's the deal with HLA? I've seen it touted as a really good way to learn Assembly but when I looked at a bit it didn't look nuffink like the stuff in Mikes tutorial...


..we fear that which we do not understand...I'm always scared!
Back to top
View user's profile Send private message
GMorgan
LXF regular


Joined: Thu Jan 12, 2006 6:58 pm
Posts: 684
Location: South Wales, UK

PostPosted: Fri Feb 16, 2007 11:58 pm    Post subject: Reply with quote

HLA is basically somebody taking a high level language and trying to call it ASM so people can claim to be writing that hard stuff. I'd avoid it, you're better off learning real ASM and then if you want a higher level approach to writing apps with some performance benefits use C and code the bottlenecks in pure ASM.
Back to top
View user's profile Send private message
View previous topic :: View next topic  
Display posts from previous:   
Post new topic   Reply to topic    Linux Format forums Forum Index -> Programming All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Linux Format forums topic RSS feed 


Powered by phpBB © 2001, 2005 phpBB Group


Copyright 2011 Future Publishing, all rights reserved.


Web hosting by UKFast