This is the mail archive of the cygwin@sourceware.cygnus.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Assembler


The quick reply is, "Yes, gas is the GNU assembler and it works just fine."
Now for the longer version ...

I find several of your comments more than a little humorous.  Personally,
I'd never hire any programmer for systems (driver or kernel) or embedded
programming that couldn't skillfully write an assembly routine at need.
It is a vital skill in many areas of business.

Also, for which processor do you want to write in assembly?  I would assume
that you intend to target the i386 family since you're asking the question
of the gnu-win32 mailing list.  I would strongly urge you to learn assembly
for any general purpose, non-RISC, CPU (eg. PDP-11/70, Motorola 68K
family, etc.) instead for your first try.

The intel x86 family is more of a special purpose stack processor and as
such you will miss out on learning many of the more common constructions
used by more general CPUs.  Of course, there is a large market for x86
assembly programmers, so learning it is far from a waste of time.  Just
remember that Intel is one of the weird ones, so what you learn may not
carry well to the rest of the world.

Lastly, if you're going to learn Intel assembly, DO NOT USE GAS!  Use
just about any other commercial or PD assembler instead.  Gas was never
intended for humans, though it can be made to serve if you preprocess
with cpp and/or m4.  It's syntax is also different than every other Intel
assembler in existence.  Your knowledge won't carry anywhere.

Oh, btw, you will want to pick up a copy of the CPU reference manual for
your target CPU.  And for examples, it's far better to look at assembly
written by a human (even bad assembly ;-) than to look at compiler output.


- Tim Iverson
  iverson@cisco.com


+----------------
| Date: Tue, 05 Aug 1997 22:28:51 -0500
| From: "Stephen P. Green" <rhino@tfs.net>
| To: "gnu-win32@cygnus.com" <gnu-win32@cygnus.com>
| Subject: Assembler
| 
| I am interested in learning assembly language.  I know this is almost a
| completely dead language, but I find it intringing.  I have two
| questions:  First is their any assembler included in the b18 release, or
| any unix gnu assembler that could be ported(please include a link if it
| has already been done or any other programs that might serve the same
| purpose) and Secondly, any literature that you could point me to as a
| good starting point.  I know that this request is a little bit of a
| deviation from our normal topic, but I beg you to show me a little
| patience and help me.  Thanks to you all...
-
For help on using this list (especially unsubscribing), send a message to
"gnu-win32-request@cygnus.com" with one line of text: "help".


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]