Re: Teaching (and Learning) Assembly Language, Part I
- From: "Alex McDonald" <alex_mcd@xxxxxxxxxxxxxxx>
- Date: 30 Aug 2005 14:15:14 -0700
randyhyde@xxxxxxxxxxxxx wrote:
> Alex McDonald wrote:
> >
> > Precursor: Part 0: Algorithms
> >
> > Programming in any language is an exercise in futility if the
> > programmer hasn't an understanding of what they're doing. Sorting,
> > searching, indexing, looping; doesn't really matter what you write in,
> > understanding the algorithms used is essential. Terje Mathisen's sig is
> > "almost all programming can be viewed as an exercise in caching". My
> > sig (if I had one) would be "almost all programming can be viewed as an
> > exercise in algorithm translation". And for functional languages,
> > "_all_ programming is an exercise in algorithm translation". Imho.
>
> This pretty much differentiates category one from category two people
> in the article. Category two people have already learned how to
> implement generic algorithms into a formal programming language.
> Without question, this is requires the *largest* effort associated with
> learning how to program in any language, including assembly language.
> It's also why most people believe that assembly language is *not* the
> best "first language" to learn, because assembly language is not a good
> vehicle for implementing (nor learning to implement) most algorithms.
> Cheers,
> Randy Hyde
Strangely, neither was Fortran, but I bet more than a handful of us cut
our teeth on it! Again, imho only... My first prgram was Newton's
iterative square root algorithm, written in RPG, the only thing
available on an IBM System3. I didn't learn assembler (S/360 BAL) until
my late teens/early twenties after exposure to IMP, and implementation
of an Algol-like language used at Edinburgh Uni. No, I'm not a comp sci
graduate; I "liberated" another student's account...
Assembler has a distinct downside in x86. The instruction set is barely
orthogonal, there are magic registers like ECX, the register set in
small, the addressing modes unusual (sib in particular) and MOV covers
a multitude of sins where LOAD and STORE are used in other assemblers.
Perhaps IA-64/EMT64 will help.
I've changed my sig for functional languages; "all functional language
programs are algorithms".
--
Regards
Alex McDonald
.
- References:
- Teaching (and Learning) Assembly Language, Part I
- From: randyhyde@xxxxxxxxxxxxx
- Re: Teaching (and Learning) Assembly Language, Part I
- From: Alex McDonald
- Re: Teaching (and Learning) Assembly Language, Part I
- From: randyhyde@xxxxxxxxxxxxx
- Teaching (and Learning) Assembly Language, Part I
- Prev by Date: Re: model of Z
- Next by Date: Re: Teaching (and Learning) Assembly Language, Part 2
- Previous by thread: Re: Teaching (and Learning) Assembly Language, Part I
- Next by thread: Re: Teaching (and Learning) Assembly Language, Part I
- Index(es):
Relevant Pages
|