| ★ APPLICATIONS ★ PROGRAMMATION ★ TAIFUN: TYPHON COMPILATEUR BASIC ★ |
Taifun (CPC Amstrad International)![]() | TAIFUN: Der weisse wirbelwind für basic-programme (Schneider Aktiv) |
Wem laufen Basic-Programme nicht zu langsam? Doch wohl Allen. Eine Möglichkeit, den Programm-abiauf zu beschleunigen, ist das Compilieren, also das „Übersetzen" in Maschinensprache, Einen solchen Compiler stellt unser Test vor. Der fortgeschrittene Basic-programmierer sucht früher oder später nach ASter-nativen, seine Software durch höhere Ausführungsgeschwindigkeit und geringeren Speicherplatzbedarf noch effizienter zu machen. Wem Maschinensprache zu umständlich und eine schnellere Hochsprache wie Pascal, Forth oder Cobol zu kompliziert ist (wer geht schon gerne freiwillig wieder auf die Schulbank), der wird früher oder später bei einem Basic Compiler wie dem hier vorgestellten “Taifun” landen. Basiccompiler sind in Maschinensprache geschriebene Programme, die Basicprogramme in kurzer Zeit in einen erheblich schnelleren Maschinencode übersetzen, der nach Fertigstellung und Abspeicherung auf Diskette oder Kassette ohne den Compiler lauffähig ist. Eines kann man mit einem Compiler allerdings nicht erreichen: In Basic geschriebene Programme durch die Compilation zu verkürzen. Alle eompi-lierten Programme wer an länger, belegen somit mehr Speicherplatz. Ein gutes Compiler-Konzept legt daher den Schwerpunkt auf eine stark erhöhte Programmabarbeitungsgeschwindigkeit. Mit dem Basiccompiler Taifun steht dem Programmierer ein leistungsfähiges Werkzeug dieser Gattung zur Verfügung. Eine Besonderheit an Taifun ist seine interaktive Arbeitsweise. Der Compiler (ca. 12k Speicherplatz), das Basicprogramm und das übersetzte (com-pilierte) Programm befinden sich gleichzeitig im Speicher. Das ist ein unschätzbarer Arbeitsvorteil. Nach dem Schreiben und Übersetzen des Basicprogramms lassen sich die aufgetretenen Fehler berichtigen und erneut compilieren. Schon während des Programmschreibens kann man auf Wunsch, durch Aufruf des Compilers, ständig überprüfen, ob z.B. Syntaxfehler vor liegen. Einfacher geht es nicht. Der erreichbare Geschwindigkeitsvorteil bei der Programmausführung liegt etwas zwischen den Faktoren 20 — 200mal schneller. Wer es nicht glaubt, der kann sich davon an einer einfachen Warteschleife, die nach dem Compilieren keine mehr ist, überzeugen. Das Basic braucht für folgende Programmzeile etwa 20 s (for i=1 to 20000: next), der Compiler nicht mal 1 s. Taifun verarbeitet nahezu den ganzen Befehlssatz des Lokomotive Basic. Vorstellung, bereits bestehende Basicprogramme (der Compiler läßt sich auch nachträglich zuladen!) seien nun problemlos übersetzbar, müssen allerdings berichtigt werden. Die eine oder andere Feinheit bei der Erstellung des Quellprogramms gilt es schon zu beachten. Leider ist das spartanisch ausgestattete Handbuch in dieser Beziehung nicht sehr informativ. Die meisten Kommandos und Funktionen verarbeiten nur einfache Strings. Reicht das nicht aus, so müssen Hilfsvariable verwendet werden. So darf etwa eine if-Schleife kein inkey$ ver-' wenden. Schachtelzeilen, mit mehr als einem if ... then ...eise, werden auch nicht akzeptiert, Variable werden nur nach den ersten beiden Buchstaben unterschieden (anz$ = anteil$!) usw. Programme, die genaue Rechnungen durchführen müssen, sollte man ganz vergessen, da Taifun nur Ganze Zahlen (Integer Compiler) akzeptiert. Diese Einschränkungen macht der Compiler aber durch eine starke Befehlserweiterung wett. Grafic-(circle, fill) und Scroll befehle (line) und eine Reihe von Erweiterungen, die hauptsächlich dem Maschinenprogrammierer zugute kommen, gehören zum Lieferumfang. Assemblerroutinen lassen sich zudem in Basic-Programme leicht einbinden, und die Erzeugung von neuen RSX-iefehlen ist ebenfalls möglich. Die neuen Befehle können aus Basic und Maschinenroutinen bestehen und stehen nach dem Übersetzungsvorgang und gewohntem Aufruf (Shift+Klammeraffe,Name) zur Verfügung. Nutzt .man diese Programmiermöglichkeiten konsequent aus, erhöht sich die Pro-gram meffizienz beträchtlich, und der verfügbare Speicher von 16 k reicht in der Regel aus.FAZIT: Wenn man von den genannten Einschränkungen (Integerzahlen, Handbuch) einmal absieht,.so darf mit Recht behauptet werden, daß man für die CPCs schwerlich einen besseren Compiler finden wird. Seinen Preis von DM 125, ist er allemal wert. Erfahrungen im Maschinensprachebereich und gute Basickenntnis-se sc te der Anwender allerdings mitbringen, sonst wird wohl vieles, was Taifun z.B. an Erweiterungen mit bringt, nutzlos brach liegen. G.W., SA |
| ![]() |