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.
|
|
|
|
|