Stewart Stremler([EMAIL PROTECTED])@Wed, Jul 26, 2006 at 03:58:52PM -0700:
> begin  quoting Carl Lowenstein as of Wed, Jul 26, 2006 at 03:40:41PM -0700:
> > On 7/26/06, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
> > >Assembly is useful to learn.  It helps you understand CPUs
> > >and ultimately what your high level code is doing under the hood.
> > >
> > >I'd like to give
> > >an intro to assembly programming class if anyone is interested.

I'm inclined to attend if time, schedule, and life allow.

<snip/>

> > 
> > Do you have any particular type of CPU in mind?
> > Or do we just assume that all the world is Intel x86?
> 
> >From the discussion on IRC, it's the latter.
> 
> Personally, I don't see the point. If you're going to give in to
> the dominant paradigm, why bother with Linux at all?
> 

OK, I have to say that this is an obvious non-sequitur.  I don't
run Linux because of anything to do with dominance.  Linux is my OS
of choice because it allows me to control *my* computer more
entirely (Gnome notwithstanding ;-) ).  Learning to cope well with
the dominant paradigm, even learning the paradigm itself, isn't the
same as giving in to it, either.  Since it's the _dominant_
paradigm, it's not like you won't run into it at every turn.  It 
makes no sense to pretend otherwise, and learning it may be the
best way to cope (assuming that it's a bad paradigm).

It seems likely that Intel CPUs have a less than attractive
assembler, and architectural features that irk or completely
anger the knowledgeable.  I'm not arguing the actual quality, but
just pointing out that abandoning everything dominant out of hand
only because of its dominance doesn't make sense to me.
 
This brings me to my real question.  What is it about Intel's X86
assembler langage that is so awful?  That isn't a challenge; it's a
sincere question.  I have stolen a glance at snippets of assembler
in books and articles, maybe even in some source I've on my own
computer.  With that said, what is it that could vary between two
assemblers so much?  Obviously two CPU architectures will have
different instruction sets, but what does it mean that X86
assembler is convoluted?  Is it a matter of CISC v. RISC? Is it a
matter of the assembler language?  Peculiar requirements of the
Intel branded chips?

When I was 4 or 5 I asked my dad for a drink of his beer, expecting
it to taste like soda pop.  I didn't drink beer again until I was
30.  I'm inclined to be exposed to this assembler and take my
chances.  It may strike me like beer hit me at 4. I may have 
the same reaction Stu had, or I might not.  What I want is a reason that
being exposed to this would be truly damaging, rather than simply
distasteful or annoying.  Why won't I understand more about the
topic from a one-night overview, even if it's about Intel CPUs?

If there is anyone willing to give a similar overview of assembler
for a different CPU like PPC, it would be a great way to provide a
contrast.  It would certainly make it easier to perceive the
differences in quality, architecture, etc... at least at a
rudimentary level.


 Wade Curry
( syntaxman )



-- 
[email protected]
http://www.kernel-panic.org/cgi-bin/mailman/listinfo/kplug-list

Reply via email to