★ APPLICATIONS ★ PROGRAMMATION ★ LE MESSIE/COMPILATEUR INTÈGRAL ★ |
COMPILATEUR BASIC INTÈGRAL (CPC Revue) | LE MESSIE/COMPILATEUR INTÈGRAL |
Il est enfin arrivé ! Mais qui ? Le Messie bien sûr. Un compilateur de BASIC sur Amstrad c'est plutôt rare. Il faut donc en profiter pour expliquer aux néophytes le comment du pourquoi.Un compilateur c'est un programme qui transforme un langage évolué (le BASIC par exemple) en langage machine. Quel est l'intérêt de la manœuvre ? Vous savez tous qu'un programme en BASIC n'est pas exécuté directement après un RUN, il y a d'abord une phase de "traduction". Le microprocesseur va transformer les instructions BASIC en code compréhensible par la machine. C'est cette traduction qui explique la relative lenteur d'exécution du BASIC par rapport au langage machine. Le Messie se propose donc de vous éviter cette phase de traduction en transformant immédiatement le programme en code. Ce qui veut dire que la vitesse d'exécution va augmenter. Il n'est plus alors nécessaire de connaître les secrets du Z80 pour obtenir du langage machine. Cela est malheureusement théorique puisqu' en fait le programme obtenu est rarement aussi compact et optimisé que celui créé directement en code machine. Le mode d'emploi de Messie est plutôt simple. Il suffit décharger par LOAD le programme BASIC à compiler puis de taper LOAD"ERE" :CALL &C000. Il s'agit surtout de respecter cette syntaxe car le programme principal occupe la mémoire écran, il ne faut donc absolument pas qu'il y ait une écriture à ce moment. Si tout se passe bien, l'écran se "brouille" puis une certaine agitation se fait entendre au niveau du lecteur de disque. Vous devez donc avoir préala-blemeni introduit une disquette déprotégée contenant le programme de compilation puisque la procédure est automatique. Prévoyez une copie de l'original, on ne sait jamais... Sur votre disquette, vous devriez donc trouver un programme P.COM représentant le résultat des cogitations de Messie. Il ne reste qu'à lancer ce programme et le tour est joué ! Il s'agissait là du cas idyllique : aucun problème ne venant se glisser malicieusement dans le déroulement de la procédure. Mais il faut savoir qu'il y a parfois des erreurs. Celles-ci peuvent provenir d'instructions non comprises par Le Messie (voir liste) ou bien de la syntaxe particulière du compilateur. Les datas doivent être guillemetés lorsqu'il s'agit de caractères alphabétiques. LOAD et SAVE ne traitent que les fichiers binaires ; FILL ne fonctionne pas toujours. Du côté des performances, si l'on laisse de côté les limitations de reconnaissance des instructions BASIC, la compilation génère un code plus important (en taille) que l'original. Prévoyez de la place sur vos disquettes ! Vous trouverez sur la disquette quelques programmes BASIC et leurs équivalents compilés. Le gain en vitesse est d'environ 4 secondes sur le programme CARTE. (Un dessin calculé s'affiche par rangée de points). En revanche, le programme compilé est 3 fois plus rapide sur le tri à bulles portant sur SO éléments. En général, tout ce qui concerne les graphismes n'est pas la meilleure démonstration des possibilités de Messie. Il est plus à l'aise dans le domaine des calculs. En effet, il accepte les variables en virgule flouante. Vous n'êtes donc pas limité aux nombres entiers, à vous les sinus, cosinus et autres tangentes. C'est à peu près tout pour l'instant. Le peu de temps qui m'a été imparti pour essayer ce programme est peut-être la cause de certaines erreurs de jugement. Les prochaines versions apporteront sans doute de nouvelles possibilités. A suivre... Liste des Instructions non AFTER CPC n°36 - Juillet/Août 1988 |
|
|