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
