Re: Question about jumps




Markus Pitha wrote:
rhyde wrote:
Now I think you're beginning to see why AoA/32 teaches assembly
language the way it does. One new concept at a time, taught when you
have the background (prerequisite) material to fully understand what's
going on.

Yes, that's exactly what I mean. I'd like to understand the absolute
basics first and I'm afraid to miss these basics when I choose the
simplified way first.

How do you figure? Do you plan on stopping before getting very far?
I'm assuming you already know how to use an IF statement. That means
when you see an IF statement in HLA, you're going to need very little
explanation as to how to use it in a program. Therefore, you can
concentrate on the *important* things, like what a MOV instruction does
and how to use ADD, AND, SUB, and so on, without being distracted with
issues like how flags are set by each of these instructions. Later on,
once you're comfortable with the simplified set of instructions, you
can learn about condition codes (flags). Then you can learn about
conditional jump instructions. *THEN* you can learn how to synthesize
statements like IF using those conditional jump instructions. One step
at a time. Without being hamstrung by a lack of knowledge early on in
the educational process.


I just browsed in AoA a little bit around and saw
that AoA imparts good background knowledge. Maybe it's a good idea to gain
information of both books.

The problem I'm seeing in your posts, though, is *typical* of students
trying to cover too much material at once. While I certainly encourage
you to learn as much as you can from as many sources as possible, it's
pretty clear that you're suffering from the "information overload"
problem (too many new ideas coming at you from too many directions)
that led me to develop the pedagogy (teaching method) I used in AoA/32.
If you didn't realize this, I taught assembly language using MASM (see
AoA/16) for *many* years before I even dreamed up the concept of HLA
and the pedagogy I use in AoA/32. I constantly saw in my students the
same thing I'm seeing with you -- the need to understand too many
concepts all at once in order to get through a particular unit early on
in the course. Again, I encourage you to get your information from as
many sources as possible, but it also looks like you're a prime
candidate for the AoA/32 method. Yep, you'll use some existing
knowledge that you simply *won't* use when learning with NASM and
Carter's book (or Duntemann's, for example). But the problems you're
having are exactly the ones that I've addressed in AoA/32. No, you
won't be learning 100% assembly language right away. You'll continue to
use your HLL knowledge up through about the sixth or seventh chapter.
But by the time you finish the book, you'll know *far* more assembly
language than if you'd taken another approach.

OTOH, if you someone who wants to just read one or two chapters in a
book, learn a few machine instructions, and call yourself an "assembly
language programmer", then AoA/32 probably isn't the right approach. It
assumes that you read beyond the first few chapters.
Cheers,
Randy Hyde

.



Relevant Pages

  • Re: Language design basics
    ... How do you programme a programming language? ... which) to create the first simple C compiler, ... They also have integer instructions add, subtract, multiply, divide. ... FPU handle it by using the appropriate assembly language instructions. ...
    (comp.programming)
  • Re: What languages had hardware implementations?
    ... E.g. lisp machines had tagged memory to support garbage ... but tags and related instructions would have supported GC ... under most any language. ... Did VAX "implement" its assembly language? ...
    (comp.programming)
  • Re: Rapport from installation of Ubuntu 7.10 on amd64
    ... any language, but looked at different languages and did some ... in the assembly language (that language that exist 1-1 function from the ... and for doing this the apparance of instructions have to be like "a=b" ...
    (alt.lang.asm)
  • Re: Evolution
    ... > inline assembler and larger parts by linking to an assembler ... in the HLL. ... language, particularly in smaller projects. ... > or two instructions if you ...
    (alt.lang.asm)
  • Re: programing with science jobs
    ... to program in assembly language, 'C', and possibly Fortran or Basic. ... execution of a single instruction cycle on the processor. ... Usually programming languages are platform and operating system ...
    (sci.physics)