On Jun 29, 2007, at 7:42 PM, Andrew Lentvorski wrote:

Christopher Smith wrote:

The limits of calculators: this one is by far the lamest of the lot. You teach kids to use a tool but you don't teach them the limitations of the tool or how to get around them!? Come on!

You are *way* off the mark on this one.

Find me a high school teacher who understands the limitations of a calculator.

Hmm... if you can find me a high school teacher who is unaware that a calculator can only accept and display so many digits, they should probably be fired, at least if they teach math or science (and frankly, we ought to be able to hold all of our teacher to that standard).

Knowing how to handle it is another matter, but such things *should* be part of the training and the curriculum for a math teacher.

This is numerical analysis. Practically nobody outside of engineering or science understands it. Practically nobody *inside* engineering or science understands it.

You are talking about something different than what was mentioned in this section. However, if only a few people actually understand it regardless of their educational background, I think I'd be okay with grade school education program that doesn't address it. ;-)

All operations are equal: I don't know where to begin with this one, it's so laughable. First of all, as I'm sure others have observed, with modern processors and programming languages, multiplication *is* as fast doing the equivalent addition or bit shifting.

It is the same O(1).  The constant factor is *not* the same.

Division is generally O(log n).

However, I will agree that if it matters we're probably not talking high school.

Again, there was a time when what you said was true. Superpipelining, which is found now (let alone when a current fourth grader is likely to enter the real world) even in embedded chips, has produced chips for whom addition, subtraction, multiplication and division all impose a single cycle of overhead. So the constant factor *is* the same.

Yes, there are factors like different delays to reach the completion unit and which parts of the pipeline are consumed by the instruction and for how long, but once you are dealing with that you also need to understand about pipeline stalls, multiple pipelines, cache lines, register dependencies, etc. None of which are going to be terribly intuitive to someone used to doing things with pen and paper (ironically some might make more sense for those who've worked with calculators).

--Chris


--
[email protected]
http://www.kernel-panic.org/cgi-bin/mailman/listinfo/kplug-lpsg

Reply via email to