For Programmers: Free Programming Magazines  


Home > Archive > A86 Assembler > March 2006 > Recommendations for Self-Instruction?









You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

 

Author Recommendations for Self-Instruction?
Lee T.

2006-03-22, 3:56 am

Please forgive me but I'm searching for the correct area to post such
an inquiry as this. I've worked extensively with C, C++ and have
experience with other higher level languages however, I am quite
interested in learning assembly for the x86 architecture and I just
don't know where to start; I've been searching for tutorials and books
and would like a push towards a direction to start.

I wish to learn a low-level asm independent of the OS layer, but I work
with FreeBSD so if it's Unix ASM I wouldn't mind.

Actually, I'm up to all sorts of suggestions, I don't have enough
working knowledge to speak, maybe after I get some sense from
someone... just trying to help myself learn something new and the
options seem endless... Books, tutorials, you name it.

Frank Kotler

2006-03-22, 3:56 am

Lee T. wrote:
> Please forgive me but I'm searching for the correct area to post such
> an inquiry as this.


You found it! :)

> I've worked extensively with C, C++ and have
> experience with other higher level languages however, I am quite
> interested in learning assembly for the x86 architecture and I just
> don't know where to start; I've been searching for tutorials and books
> and would like a push towards a direction to start.
>
> I wish to learn a low-level asm independent of the OS layer, but I work
> with FreeBSD so if it's Unix ASM I wouldn't mind.
>
> Actually, I'm up to all sorts of suggestions, I don't have enough
> working knowledge to speak, maybe after I get some sense from
> someone... just trying to help myself learn something new and the
> options seem endless... Books, tutorials, you name it.


The BSD Developer's Handbook has quite a nice chapter on assemblt
language programming.

<http://www.freebsd.org/doc/en/books...ndbook/x86.html>

Jonathan Bartlett's "Programming from the Ground Up" is for Linux -
should "mostly" apply to BSD also - uses AT&T syntax.

<http://www.cafepress.com/bartlettpublish.8640017>

Or the "free - as in freeloader" version... :)

<http://savannah.nongnu.org/projects/pgubook/>

Despite the name,

<http://www.linuxassembly.org>

covers BSD as well - the macros in the "asmutils" section allow the same
source to be assembled into either Linux or "native" BSD executables.
For more "generic" asm info:

<http://www.drpaulcarter.com/pcasm>

Uses Nasm. Relies on C libraries for all OS-specific I/O, so it's
"portable".

Kinda the "granddaddy" of assembly sites:

<http://webster.cs.ucr.edu>

leans towards HLA, the "High Level Assembler" - which runs on Windows
and Linux - should run on BSD, too(?). Geared toward teaching students
with a HLL background, AoA and HLA might be just what you're looking
for. If it *doesn't* suit your taste (doesn't suit mine) there are links
to *all* kinds of other things you might want to look at.

..... that ought to keep you busy for a while! :)

Best,
Frank

P.S. If Nasm doesn't ship with BSD (it may) and you want it:
<http://www.sf.net/projects/nasm>
(I'd download source and build it)

Rod Pemberton

2006-03-22, 6:57 pm


"Lee T." <spamtrap@crayne.org> wrote in message
news:1143002198.484750.7560@g10g2000cwb.googlegroups.com...
> Please forgive me but I'm searching for the correct area to post such
> an inquiry as this. I've worked extensively with C, C++ and have
> experience with other higher level languages however, I am quite
> interested in learning assembly for the x86 architecture and I just
> don't know where to start; I've been searching for tutorials and books
> and would like a push towards a direction to start.
>
> I wish to learn a low-level asm independent of the OS layer, but I work
> with FreeBSD so if it's Unix ASM I wouldn't mind.
>
> Actually, I'm up to all sorts of suggestions, I don't have enough
> working knowledge to speak, maybe after I get some sense from
> someone... just trying to help myself learn something new and the
> options seem endless... Books, tutorials, you name it.
>


None of these will teach you assembly, but they are good references.

GAS Assembly links:
http://www.ibiblio.org/gferg/ldp/GC...mbly-HOWTO.html
http://www.delorie.com/djgpp/doc/br...line_djgpp.html
http://www.cs.utah.edu/dept/old/texinfo/as/as_toc.html
http://www.gnu.org/software/binutil...pter/as_16.html
http://www.delorie.com/gnu/docs/binutils/as_270.html

IA-32 instruction reference
http://www.rz.uni-karlsruhe.de/rz/d...nstructions.htm

Sandpile.org's IA-32 architecture
http://www.sandpile.org/ia32/

Agner Fog's Pentium Optimization chapter:
http://asdf.org/~fatphil/x86/pentopt/28.html

File Format links:
http://www.yeyan.cn/Programming/gcc...ry-formats.aspx
http://devpit.org/wiki/ Compiler_Op...Binari
es



Rod Pemberton


Lee T.

2006-03-22, 6:57 pm

You have been a huge help. I really appreciate the time you took to
help guide me toward some items which are in existence out there.
Again, thanks.

-Lee

termin

2006-03-24, 6:59 pm

Lee i am also learning assembly after working in C++ and C in linux
not Free BSD ,
i am reading the book "Programming from ground up" and i am finding it
real useful , actually i want to write corewars self replicating
bot.... hope we can help each other out ...
Regards
Deepak

Ole Nielsby

2006-03-24, 6:59 pm


Lee T. <spamtrap@crayne.org> wrote:

> I've been searching for tutorials and books [...]


If you don't have an urgent need for MMX/SSE/SSE2 etc.,
consider getting a 486 manual from a second-hand bookstore.

It's easier to get a grasp of the processor architecture essentials
when you don't get bothered with the latest extensions.

I still use an old 386SX processor manual from Intel as my
primary reference for asm programming, with a 387 manual
for the FP stuff, and I wouldn't swap it for a truckload of
newer docs. Though I might upgrade to a 486 manual some
day.



Sponsored Links







Also available: Server administration forum archive | Web Design forum archive | Software forum archive | Hardware reviews archive

Copyright 2008 codecomments.com