★ APPLICATIONS ★ DIVERS ★ TRI A GRANDE VITESSE ★ |
Tri Turbo (Microstrad) | Applications Divers |
Une nouvelle instruction trie les tableaux à une dimension, et ce, à toute vitesse. Un TGV informatique en somme ! Quelle rapidité ! Ecrit en langage machine, ce « tri en épi » traite les tableaux à une dimension. Il est appelé par une nouvelle instruction Basic : |TRI,@A$,C,N. Le nom du tableau est affect à A$, le sens du tri (croissant ou décroissant) à C et l'indice de l'élément final à N. Une erreur dans les données provoque le retour au Basic avec un message d'erreur. La valeur de as est de type chaîne, celle de c'est de type booléen (0 ou -1) et celle de N est de type entier. Pour appeler la routine depuis un programme Basic, on écrira : 10 DIM T(100)L'ensemble du tableau est alors trié jusqu'à l'élément final donné, y compris l'élément d'indice 0. Si ce dernier est vide, il peut perturber le tri et se classer. Les indices doivent être adaptés à cette exigence. Le chargeur Basic (programme 1) permettra de placer facilement la routine de tri, sans être obligé de posséder un Assembleur. Elle est implantée en &A000 jusqu'en &A343 (hexadécimal). Vous ne pourrez la déplacer en mémoire. Le programme vérifie l'entrée des data et indique, en cas d'erreur de copie, dans quel groupe de lignes elle a eu lieu. Le tri est ensuite mis en place par call &A000. Un peu de patience et vous disposez d'une nouvelle instruction Basic très efficace, une RSX (extension Basic). Lignes 1060 à 1110 : lecture et vérification des DATA.
1210 DATA 56,D5,DD,E1,2A,6AAE,22Pour les habitués du langage machine, il sera plus rapide de sauvegarder le programme binaire par SAVE "TRIBIN",b,&A000,&344,&A000 et de l'appeler en début du programme utilisateur par MEMORY &9FFF:LOAD "TRIBIN:CALL &A000. Le programme 2 est un exemple d'utilisation de ce tri. Il traite cent chaînes de quatre caractères créées aléatoirement. Un bip sonore vous indique le début du travail. Vous pouvez faire des essais avec des. tableaux d'entiers ou de réels, la routine permettant de trier tous les tableaux à une dimension quel que soit le type des variables indicées. Ligne 70 : mélange de tableaux pour essai recherche.Maintenant, à vos chronomètres! le gain de temps est étonnant.
|