samedi 29 septembre 2012

Et la palme de la simplicité revient à... la TI-66

J'avais 11 ans en 1983, lorsque la TI-66 apparaît en France. Après avoir fait quelques essais avec une TI-57 LCD, c'est la TI-66 qui deviendra réellement ma première calculatrice de collégien. Avec un prix positionné autour de 500 francs, elle n'était pas donnée ; mais deux fois moins chère que la HP-15C, tout de même. Bien que limitées, ses possibilités étaient suffisantes pour couvrir les programmes scolaires à l'époque. Un camarade de classe a même réussi brillamment son Bac C en 1990, avec cette TI-66 ! La calculatrice scientifique programmable était devenue obligatoire pour passer l'examen.

Le point fort de cette calculette, c'est vraiment sa simplicité. Le clavier est rapide au toucher (moins dur que HP), et bien disposé. Avec deux libellés par touche, au maximum, il reste très lisible. D'autre part, la notation algébrique directe AOS (ici, 9 niveaux de parenthèses), chère à Texas, paraît plus intuitive que le RPN pour les débutants. Enfin, pour la programmation et le débogage, on est bien aidé par l'affichage alphanumérique.




C'est également l'une des rares machines de cette catégorie à posséder un petit port série, pour la connexion d'une imprimante, ou pour le synthétiseur vocal Calcu-Talk (http://www.datamath.org/Sci/Galaxy/TI-66_CalculTalk.htm).

En performance pure, que vaut vraiment le CPU 4 bits Toshiba T6875 associé à ses 1K de mémoire 4 bits ? La réponse est : pas grand chose, ça rame grave ! Il faut plus de 14 longues minutes à la TI-66 pour dérouler les itérations requises par mon programme de test ci-dessous (toujours avec le nombre 524 287 en entrée). De plus, pendant le calcul, l'afficheur est juste gris, comme si la machine était éteinte.

Le programme en version TI-66 :

"Ce nombre est-il premier ?" pour TI-66 partie 1/2

Deuxième partie :

"Ce nombre est-il premier ?" pour TI-66 partie 2/2

jeudi 27 septembre 2012

"Ce nombre est-il premier ?"... avec une HP-15C

La HP-15C est sortie en 1982 (série Voyager), soit 7 ans après la HP-25. Si on compare les prix, la HP-25 valait $195 (595 francs en 1978 à la FNAC) contre $135 pour la HP-15C. Les prix baissent (relativement) et de nouvelles fonctionnalités apparaissent : c'est la règle avec le matériel informatique.

En termes de nouvelles fonctionalités intégrées à la ROM, on peut dire que la HP-15C était bien fournie. Jugez plutôt : calculs avec les nombres complexes (e^(2i.Pi) = 1 ... ou presque), calcul matriciel (dim maxi 8 x 8), résolution numérique d'équations, intégration numérique, fonctions statistiques, etc.

Mais en performance pure ça donne quoi ? Que vaut le CPU "Nut" à 220 kHz de la HP-15C, en techno CMOSC, face au CPU à 180 kHz de la HP-25 en techno P-MOS ? Eh bien, aussi étonnant que cela puisse paraître, c'est la HP-25 qui est la plus rapide !

En tout cas, avec mon programme légèrement adapté (sans optimisation), le même calcul sur le nombre premier 524 287 prend plus de 8 minutes sur la HP-15C ! La HP-25 serait donc, à la louche, 60% plus rapide ?


"Ce nombre est-il premier ?" pour HP-15C

En tout, il y a 4 pas de programmes en plus à cause des labels. Sur HP-15C le simple GTO vers un numéro (hors label) n'est plus supporté en mode programme.  De plus, le test "x >= y" n'est plus sur une touche, mais en indirect (TEST 9). Je ne pense pas que cela suffise à expliquer un tel écart de performance ?


Deux calculatrices "dans leur jus"

Une autre implémentation pour la HP-15C du même algorithme est disponible sur http://www.hpmuseum.org/software/15prnuck.htm.

mardi 25 septembre 2012

"Ce nombre est-il premier ?"... avec une HP-25

La HP-25 est une calculatrice programmable scientifique bien connue des collectionneurs, qui est sortie en 1975. C'est la deuxième génération de calculatrices de poche HP, nommée "Woodstock". Sa mémoire est volatile, ce qui signifie que le programme est perdu quand on bascule sur off. Cela dit, je ne vais pas réécrire une description du style http://www.hpmuseum.org. Il existe plusieurs excellents sites qui donnent des tonnes de détails sur ces vieilles calculatrices. Je vais juste citer http://www.jacques-laporte.org pour la richesse des infos qu'il distille !

Pour pousser un peu la mienne vers ses limites, j'ai écrit un petit programme, dont l'algorithme est connu (il y a mieux), et qui permet de répondre à la question : "ce nombre est-il premier ?".

L'usage en est très simple :
  1. on tape un nombre entier "n"
  2. on appuie sur R/S
  3. le programme calcule (parfois plusieurs minutes !)
  4. l'affichage s'arrête sur le plus petit diviseur trouvé, ou bien sur 1.00, si "n" est premier

Voici mon programme :

"Ce nombre est-il premier ?" pour HP-25


Et voilà, en vidéo, ce que ça donne sur 524 287. C'était le plus grand nombre premier connu jusqu'en 1588. La vidéo n'est pas passionnante, c'est juste pour prouver que ça fonctionne bien en moins de 5 minutes sur une vraie HP-25 originale, et qu'on a "1.00" à la fin :



Dans cet article de "L'ordinateur de poche, numéro 1" : http://www.archives.hp41.eu/ordinateur-poche/numero-1/op-1-page-54-1000.jpg il y avait un autre programme (autre algo). Mais il était plus long : 97 pas sur HP41, c'est impossible sur HP25 ! De plus, lorsqu'on lui soumet 2701, mon programme affiche rapidement "37.00".

lundi 24 septembre 2012

Blog ouvert, saison 1

J'ouvre mon blog par ce premier message, daté du 24 septembre 2012. L'idée sera de partager ici quelques réflexions sur mes passe-temps favoris. Dans cette première saison, je vais vous parler de mes vieilles calculatrices. Peut-être que cela n'intéressera que les collectionneurs ou les nostalgiques ? Mais s'il était totalement inutile d'évoquer et de montrer les vieux objets dépassés, pourquoi les musées existeraient-ils ?