Re: Question about jumps




Markus Pitha wrote:
randyhyde@xxxxxxxxxxxxx wrote:
Of course it is. But do you need to learn this first? Could it possibly
be that there are other things that are more important to master first?

Maybe but I have to learn everything at any rate.

But you'll find the process more efficient and more rewarding if you
learn the material in the right order.



Now *you* may be one of the exceptions, but in my experience, putting
off things like flags and conditional branches until people have
mastered basic things like the simple sequential instructions, basic
data types, and basic program organization, works a lot better.

Sure, but you can't image how often I already heard what a loop or a data
type is.

So you know how to use a loop. You know how to use an IF statement.
That's the point I'm making. But a beginner generally has a *lot* to
learn before they're ready for these concepts in assembly language.
There's a lot of prerequisite material to cover first. The questions
you're raising suggest that you've not covered the material in an
appropriate order. That's the point I'm making. You're jumping ahead
and trying to learn it all at once rather than taking it a step at a
time.

You aren't going to learn any less by using your existing
knowledge during the early phases of your assembly education.

That's what I actually do.


Did your C knowledge not help you when learning Perl? Do you think your
C and Perl knowledge won't help you when you learn Java and C#? Why
should you start completely over when learning assembly language?
That's what you're suggesting that you do?

Yes, but I don't start completely over. It's logical that I have to look,
e.g. how loops are built in assembler language but I don't have to repeat
what loops are.

Precisely. But that doesn't mean that you're going to have the
knowledge to implement those loops on day one of your assembly language
education. Assembly language is fundamentally different from HLLs like
C, Perl, C#, and Java, which are more alike than different. You can't
simply say "just change a few characters" in your assembly syntax and
produce a while loop as you can when moving from C to Perl, C#, or
Java. That's why using high-level language constructs early on in
assembly is so useful -- you *can* create while loops (and other
HLL-like constructs) that are simple syntactic changes to what you've
learned in your HLL until you're *ready* to do it the assembly way. And
people just learning assembly are *not* ready for that. No matter what
you may think of your capabilities :-)



OTOH, if you had kept reading through AoA, you probably would have
learned that you can call one of several nifty little random number
generators that are present in the HLA Standard Library.

That's exactly what I don't want.

Why? What does writing a random number generator have to do with
learning assembly language? I'm not sure why you're any more compelled
to write your own RNG in assembly language than you were in a HLL. To
learn assembly language programming doesn't imply that you've got to
learn how to write every little routine you use from scratch. That's
just silly.

It's like in C, including any libraries,

Or any other language for that matter.
Yes, just like that.
And this has nothing to do with learning assembly.

but I want to know what these little gremlins in the background do.

Then write them in C. There's nothing "assembly language" about them.
Certainly learning assembly language is independent of learning about
algorithms and data structures.

Cheers,
Randy Hyde

.



Relevant Pages

  • Re: How to count Number of Instructions executed in One Second
    ... I need to get a count the no of instructions [even assembly language ... instructions] executed in a for loop in exactly one second... ... jacob at jacob point remcomp point fr ...
    (comp.lang.c)
  • Re: The HLL Temptations
    ... > with an HLL Pre-Parser, ... We lose the beautiful simplicity of assembly ... mov esi SaveFilter ... The really sad part is that assembly language *doesn't* have to be this ...
    (alt.lang.asm)
  • Re: Assembly fields of application
    ... > HLL code into assembly or you can write directly in assembly...in this way, ... > program with assembly language in the slow parts to run faster...you get ... > loaded with RAM, you can consider, say, handheld PDAs (which tend to have ... The only problem I can imagine comes from how much productivity I will ...
    (alt.lang.asm)
  • Re: Assembly Language for Secondary Schools
    ... How could learning an HLL teach Assembly, ... some HLL prior to learning assembly language -- so that AoA doesn't ... HLL programming knowledge rather than trying to make them forget ...
    (alt.lang.asm)
  • Re: Born again
    ... The reason assembly is ... assembly language well enough to write robust applications in it. ... the success of HLL over assembly, ... Quality is defined in many different ways. ...
    (alt.lang.asm)