Polonaise inverse

  Mardi 31 Mai, 2011 par Jac Lou, Cat: Chapitres Partagez » Partagez cet article sur Facebook Partagez cet article sur Google+

  La fin des années 1970 verra une accélération des progrès technologiques encore plus grande que pendant la première moitié de la décennie. Du côté des montres numériques, les diodes rouges céderont progressivement leur place à des affichage par cristaux liquides (Liquid crystal display, LCD). Le prix des montres LCD n'étant pas plus élevé que celui des montres à LED, j'en achèterai plusieurs, sans me ruiner, à la gare de Munich en 1978-79: un modèle Texas Instruments TI250 assemblé en Italie et deux modèles MBO d'origine japonaise.

 De leur côté, les calculettes, elles aussi passeront rapidement de l'affichage à LED aux mini-écrans LCD. En 1978, on peut déjà acheter une HP29C de Hewlett-Packard (HP) disposant d'une mémoire permanente CMOS et de 98 pas de programmes (chaque pas pouvant enregistrer 4 touches de fonction). La HP-97 coûte encore 600 US$, mais on peut acheter une calculatrice programmable Texas Instruments (TI) à cartes magnétiques TI-59 pour seulement 220 $US ou même une TI-57 sans cartes pour 65 $US. À des prix aussi bas, le labo dans lequel je finis ma thèse peut s'en offrir et me permettre ainsi de découvrir les joies de la programmation. Si j'avais su dans quelle galère je m'embarquais !!! Avec ces machines, la programmation est encore rudimentaire: il faut apprendre à jongler avec les registres et les mémoires. Et 100 pas de programme, cela ne permet guère de fantaisies. On apprend aussi la nécessité de l'optimisation. D'autant que sans carte magnétique (j'étais dans un labo public et on ne gaspille pas l'argent du contribuable), le programme est perdu quand on éteint la machine :-(

 On peut rappeler que HP et TI ont partagé le monde des utilisateurs en 2 clans. Il y avait les partisans de la notation polonaise inverse (Reverse Polish Notation, RPN) de HP - en général plutôt des matheux, d'après mon expérience personnelle - et il y avait les partisans de la notation directe de TI. Les exemples ci-dessous, mimant les deux types de notation à l'aide d'une simple programmation en javascript et tout à fait fonctionnels (utilisez-les en cliquant les boutons avec la souris), démontrent la rusticité de ces premières calculettes.

 La "notation directe" est ce que nous utilisons (presque) tous : pour additionner 2 et 3 et multiplier le résultat par 4, on tape "2" puis "+" puis "3" puis "*" puis 4 et on presse le signe "=" pour obtenir le résultat. La séquence est donc 2 + 3 = * 4 = . C'est de cette façon que fonctionne par exemple la calculatrice de Windows.

 La "notation polonaise inverse" est plus proche du traitement informatique: elle utilise une "pile" (suite de registres mémoires temporaires). Pour faire la même opération que précédemment, on commence par pousser "4" dans le haut de la pile, puis "3" dans le registre suivant, et enfin "2" dans le registre suivant; on effectue ensuite la première opération entre les 2 derniers registres en cliquant "+", puis on obtient le résultat en pressant "*" qui effectue l'opération entre le résultat précédent et le premier registre. La suite des opérations est donc : 4 [Entrée] 3 [Entrée] 2 + *, essayez. Pour plus d'explications sur la logique de ces opérations, voir l'article Wikipedia signalé dans le lien ci-dessus.

gsrpn, © Guido Socher
T:  
Z:  
Y:  
 

 Le résultat est en principe (et sauf erreur) le même dans les deux cas, mais on a entendu alors entre les protagonistes des débats dignes de ceux qu'on entendra plus tard dans les années 1990-2000 entre les partisans du Mac (Apple) et ceux du PC (tous les autres). Chacun des camps prétend que "sa" méthode est plus "intuitive" que l'autre... Dans quel camp êtes-vous ?

 

 Permalien

Aucun commentaire pour le moment


Formulaire en cours de chargement...