Vitesse du perroquet

Le lancement de l'ancien programme Pascal s'est terminé par une «division par zéro». Tout le monde a juré que personne n'avait touché ou retransmis ce programme depuis dix ans. Et la date du fichier EXE l'a confirmé.





Que peut-il y avoir d'autre division par zéro? J'ai dû m'armer de l'ancien débogueur et analyser les actions du programme.





Deux choses se sont révélées.





. . : « », .. DX:AX CX 16 . , x86 , «» . , .





. ( ) , . .. .





. . « » ( ), , . , IBM-PC/XT. , « », .. « ».





. . , , , « XT» ThinkPad A31p. XT 65535 , .





J'ai dû "mordre" cette stupide division directement dans le fichier EXE. Au fait, par curiosité, j'ai divisé ces deux nombres sur une "calculatrice" et j'ai obtenu une accélération par rapport à XT par un facteur de 118351. Ceux. pour les ordinateurs conventionnels accessibles à tous, cette accélération a été réalisée entre 1981 et 2002 environ. Pas mal. Et la vitesse "chez les perroquets" est encore mieux de ne pas mesurer.





PS Ce problème des anciens programmes Pascal est connu et résolu depuis longtemps. Mais j'ai remarqué que la plupart des programmeurs n'ont jamais pensé à la raison pour laquelle cela se passait de cette façon.








All Articles