Assemblers for FreBSD

Nikos Vassiliadis nvass at
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

HTH, Nikos

More information about the freebsd-questions mailing list