Assemblers for FreBSD

Nikos Vassiliadis nvass at teledomenet.gr
Mon Mar 12 09:36:15 UTC 2007


On Sunday 11 March 2007 18:52, Patrick Bowen wrote:
> If one wanted to learn Assembly Language Programming, would he be better 
> served starting with as(1) or nasm(1)?

as(1) is the assembler used in the building procedure,
making it your logical choice for operating system
programming. It uses the AT&T syntax of UNIX heritage.
It understands Intel's syntax as well. Keep in mind that
the code in the tree is in AT&T syntax. I guess that
must be true for all Unix-like operating systems. Last
time I checked, nasm was intel only.

I think that nasm mainly served people coming from
DOS, people that already knew the Intel syntax. If
I was about to try assembly, I would learn AT&T. I
think there is more code in Intel syntax though,
mainly in the graphics area.

It depends on what your purpose is. Operating system
programming is dominated by as(1).

> Also, are either of those  
> applicable to AMD64, or just i386?

Since as(1) is the only assembler in the tree, and
FreeBSD can build itself... as(1) supports many
machines...

HTH, Nikos


More information about the freebsd-questions mailing list