Das Open-Control-Projekt - Die Alternative zur C-Control-I


Das Forum zur C-Control-1
Welche C-Control-Varianten existieren?
Übersicht - Suchen - Neueste 50 Beiträge - Neuer Beitrag - Login - Registrieren
INFO - FAQ - CC2-Forum - CCPro-Forum 

 Compiler für BASIC-nach-Maschinensprache auf der OM Kategorie: Open-Micro/Open-Mini/Open-Midi/Open-Macro/Open-Maxi (von Dietmar, Homepage - 8.02.2020 23:29)
 Als Antwort auf Neuigkeiten von Dietmar - 25.06.2005 10:00
Dietmar nutzt:  Open-Micro, Open-Mini, Open-Midi, Open-Macro, Open-Maxi, Open-Mini Station
Hallo an alle Besitzer eines OM-Controllers!

Ich habe dem echten OCBASIC-Compiler OCBASR jetzt auch die Open-Macro und die Open-Maxi hinzugef├╝gt. Damit werden nun alle OM-Controller von OCBASR unterst├╝tzt. Enthalten sind auch zwei automatische Programmtests ("Testsuite") f├╝r diese beiden OM-Controller.

Hier etwas Erkl├Ąrung, f├╝r alle, die OCBASR noch nicht kennen:

Um BASIC-Programme noch weiter zu beschleunigen, habe ich f├╝r die OM-Controller einen Compiler namens OCBASR geschrieben, mit dem der Anwender BASIC-Quellcode sehr komfortabel in Maschinensprache, bzw. Assembler, umwandeln kann. Der Standard-Compiler OCBASIC ├╝bersetzt bekanntlich BASIC-Quellcode in Tokencode, der vom Interpreter in der OM ausgef├╝hrt wird. Gegen├╝ber diesem interpretiertem Tokencode wird die vom Compiler OCBASR erzeugte Maschinensprache erheblich schneller ausgef├╝hrt.

Und dabei ist die Benutzung des neuen Compilers denkbar einfach. Zur Installation mu├č man einfach das Programm OCBASR32.EXE in das Verzeichnis kopieren, in dem schon OCBAS32.EXE steht, und in ConTEXT bei den Benutzerbefehlen "OCBAS32.EXE" durch "OCBASR32.EXE" ersetzen. Nun wird der BASIC-Compiler OCBASR statt OCBASIC gestartet.

Noch einfacher ist es, BASIC-Quellcode in Assemblercode, bzw. Maschinensprache ├╝bersetzen zu lassen. Der zu beschleunigende Code mu├č in einer Subroutine oder in einer Funktion stehen. Wird hinter die Startzeile dieser Subroutine oder Funktion das Schl├╝sselwort COMPILE angef├╝gt, wird der OCBASR-Compiler aktiv und ├╝bersetzt den in ihr stehenden BASIC-Sourcecode in die Maschinensprache. Dieser Programmteil wird nun ├╝blicherweise 3 bis 4 mal schneller ausgef├╝hrt. Einige BASIC-Befehle sind sogar 10 bis 20 mal schneller. Siehe folgendes Beispiel.

INCLUDE "omax.def"

DEFINE a,b,c BYTE

subroutine
PRINT funktion(5,8)
END

PROCEDURE subroutine COMPILE
  PRINT "Hallo, hier ist eine Subroutine in Maschinensprache!"
  RETURN
END PROCEDURE

FUNCTION funktion(a,b) COMPILE
  FOR c=a TO b
    PRINT c
  NEXT c
  RETURN 123
END FUNCTION

Bei der Entwicklung des BASIC-Compilers OCBASR stand vor allem die sehr einfache Benutzung im Vordergrund. Der Anwender braucht nur das Schl├╝sselwort COMPILE an den Namen eines Unterprogramms anzuh├Ąngen, um sein Programm zu beschleunigen. Es l├Ą├čt sich so gut wie jeder BASIC-Befehl in Maschinensprache ├╝bersetzen und er f├╝hrt interpretiert wie compiliert zum gleichen Ergebnis.

Viel Spa├č und Erfolg mit den OM-Mikrocontrollern!

Dietmar

Passender Link: OCBASR auf der OM-Infosite

Meine Homepage: http://ccintern.dharlos.de

 Antwort schreiben

Bisherige Antworten: