Re: Ti89 Very Slow
[Prev][Next][Index][Thread]
Re: Ti89 Very Slow
Nick Konidaris II wrote:
>
> Laurent: The ti89 is slow, its basic language is not well suited for doing
> numerical programming (ironic, huh?)
>
> Unfortunatly, there's not much you can do except *shudder* use assembly,
> but that's a waste of time.
>
> The 89/92 are great for doing symbolic stuff.. but if you want to do a
> fft, it's best to consider using something like a computer or an HP
> calculator. There is a nice package for the 92 in basic which does
> symbolic FT, but I don't know if you can use that here.
>
> The other option is that some people may have actually figured out good
> hacks to optimize the speed of such loops.. Maybe they can impart some
> wisdom.
>
> I don't think you're going to get much of a speed improvement on a for
> loop though.. oh-well.
>
> Nick
As far as I understand the internal number coding of the TI89 (deduced from the
size of the data), integer are coded in BCD (king of ascii number coding). It
means 100 takes 3 bytes, 1000 4 bytes and so on like if they were strings (true
BCD should take only half of these sizes). It also means that 100+1 is much
more
difficult to do in a fast way than the common binary way using the processor
internal adder for integers. Using BCD means you can handle easily any integer
ranges but it is much slower than binary additions (limited to 2^31 in the case
of 32 bits signed integers) and the time needed to compute the addition depends
of the size of your integers.
I think the language should provide fast loops, working only on binary integer
and fast list/matrix access. Why do they reduce the TI89 to symbolic
computation
if they can get both ? (numerical computation is ususally much easier to do
than
symbolic). It is clear that they have designed the software of the TI89 for a
calculator using mostly strings as internal data representation, not like a
computer with few different but efficient data representation. This is the main
difference with the HP48 which is more or less a computer (and a calculator)
but
too slow (the saturn is 4 bits 6Mhz on the GX).
Nevertheless, fast loops are needed if you want to program something and the
TI89's processor is more powerful than the 68000 present in the first Mac. But
look at the differences of the possibilities ! If they think that loops are not
the main point of a programming langage, why do they provide four different
ways
to make loops ?
And what about the memory problem ?
Laurent
References: