From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: *** X-Spam-Status: No, score=3.8 required=5.0 tests=BAYES_00,INVALID_MSGID, RATWARE_MS_HASH,RATWARE_OUTLOOK_NONAME autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: fc89c,97188312486d4578 X-Google-Attributes: gidfc89c,public X-Google-Thread: 109fba,baaf5f793d03d420 X-Google-Attributes: gid109fba,public X-Google-Thread: 103376,97188312486d4578 X-Google-Attributes: gid103376,public X-Google-Thread: 1014db,6154de2e240de72a X-Google-Attributes: gid1014db,public From: "Tim Behrendsen" Subject: Re: What's the best language to start with? [was: Re: Should I learn C or Pascal?] Date: 1996/08/10 Message-ID: <01bb86f5$f7f8ae40$32ee6fce@timhome2>#1/1 X-Deja-AN: 173412382 references: <01bb846c$e51df220$87ee6fce@timpent.airshields.com> <4ug4eh$qn8@zeus.orl.mmc.com> content-type: text/plain; charset=ISO-8859-1 organization: A-SIS mime-version: 1.0 newsgroups: comp.lang.c,comp.lang.c++,comp.unix.programmer,comp.lang.ada Date: 1996-08-10T00:00:00+00:00 List-Id: Bob Gilbert wrote in article <4ug4eh$qn8@zeus.orl.mmc.com>... > In article <01bb846c$e51df220$87ee6fce@timpent.airshields.com>, "Tim Behrendsen" writes: > > > > Not to get into a debate on the meaning of abstraction, but the > > point is that there is very little hidden from the student when > > they are learning assembly. This allows them to better concentrate > > on the basics of algorithms, because they are not distracted by syntax. > > Yeah, but they are distracted by learning the computer architecture. > When I was first introduced to programming in assembly, the learning > of algorithms was not the purpose of the course. What was learned > from programming in assembly was the underlying architecture, what > registers were, how memory was addressed, etc. > > > Of course, but I'm talking about abstractions of assembly, i.e., > > HLLs. Remember, C (or any HLL) does not really exist as far as > > the computer knows. Assembly is the direct raw instruction set of > > the physical machine. If the student is learning algorithms in > > assembly, they are unquestionably learning the algorithm, and not > > just some vague concept wrapped in 10 layers of wool. > > I though assembly was an abstraction of the raw instruction set, not > exactly the raw instruction set. After all, the assembler allows one > to abstract memory locations by assigning names or labels to them, it > abstracts the instructions by assigning shorthand pneumonics to them, > many allow the abstraction of code fragments which might perform some > higher level function by allowing the programmer to implement them as > macros, etc. Well, technically you're right but there is a one-to-one correspondance between assembly mnemonics and machine language, so there is no practical difference between the two, as far as understanding the machine. -- Tim Behrendsen (tim@airshields.com)