ist eine intuitiv zu bedienende und mächtige Webapp zum Entwickeln, Kompilieren, Simulieren und Konvertieren von Bonsai-Assembler-Code.
Im "Programm"-Block der Webapp befindet sich der Monaco-Editor, ein sehr umfangreicher Online-Code-Editor, der mit Syntaxhighlighting für Bonsai-Assembler ausgestattet wurde. Zusammen mit dem "Daten"-Block lassen sich so bereits beliebige Programme realisieren.
Im "Daten"-Block lassen sich durch Klicks auf den "+" Button beliebig viele Speicherplätze
mit festgelegter Adresse hinzufügen. Deren Wert kann durch einen einfachen Klick auf die jeweilige Adresse
manipuliert werden. Dadurch, dass beim Bonsai-Lehrcomputer
der Wert eines Speicherplatzes auf einen Byte beschränkt ist, muss der eingegebene Wert zwischen 0 =
(00000000)2 und 28-1 = 255 = (11111111)2 liegen. Der rote Link
"Zurücksetzen" entfernt alle Speicherplätze
bis auf den mit der Adresse 0. Diesem wird der Wert 0 zugewiesen.
Die Befehle um mit den Daten zu
interagieren finden Sie in diesem Abschnitt.
Der Block mit der Bezeichnung "Speichern/Laden" ist selbsterklärend. Die Speicher-Funktion ermöglicht es den aktuellen Inhalt des Editors herunterzuladen und zu speichern. Nach diesem Prinzip erstellte Daten können mit der Schaltfläche "Öffnen" wieder in den Editor geladen werden. Mit "Löschen" werden alle Speicherplätze und der Inhalt des Editors zurückgesetzt.
Im Block mit der Bezeichnung "Aktionen" befinden sich die Schaltflächen, die die drei
Hauptfunktionen der App steuern:
KOMPILIEREN bezeichnet das Umwandeln der für Menschen lesbaren
Befehle in Maschinencode. Dieser Vorgang muss vor
dem Ausführen durchlaufen werden, um unter Anderem absehbare Fehler im Programmcode erkennen und ausgeben zu
können.
Die Statusanzeige des Compilers finden Sie im "Programm"-Block unter dem Editor.
Sollten während des Kompilierens
keine Fehler gefunden werden, wird dies in der Statusanzeige ausgegeben und die Buttons "Ausführen" und
"Maschinencode" werden aktiviert. Werden Fehler gefunden, werden diese inklusive Zeilenangabe angezeigt und
das Kompilieren wird unterbrochen.
Mögliche Fehler sind Typos bei den Befehlen, der Zugriff auf Speicherplätze mit falscher
Adresse und das Einfügen von Leerzeilen innerhalb des Codes, die der Bonsai-Computer nicht verarbeiten
kann.
Bitte beachten
Sie, dass Sie nach jeder Änderung am Code Ihr Programm neu kompilieren müssen! Um Zeit zu sparen, kann das
Kompilieren auch mit der F3-Taste gestartet werden.
Nachdem das Kompilieren ohne Fehler beendet wurde, wird der Button Ausführen aktiv. Mit diesem können Sie die Bonsai-Simulation starten, in der Ihr Programm Befehl für Befehl abgearbeitet wird. Dies lässt sich in Echtzeit nachverfolgen, da in der Statusanzeige des Compilers angezeigt wird, welche Zeile momentan bearbeitet wird. Diese wird auch genutzt, um Fehler anzuzeigen, die während der Laufzeit des Programmes entstehen (beispielsweise beim Dekrementieren eines Speicherplatzes mit dem Wert 0).
Die Funktion hinter dem Button mit der Aufschrift Maschinencode ist das Herzstück
der App. Nach dem Klick auf den Button wird das komplette Programm in der für den Bonsai-Computer
verständlichen binären Assemblersprache angezeigt.
Um
das Eingeben dieser Befehle in den Speicher des Bonsai-Computers noch weiter zu vereinfachen, gibt es die
Möglichkeit, sich jeden Befehl einzeln inklusive "An/Aus-Grafik" anzeigen zu lassen. Durch diese Funktion
wird das Programmieren
des Bonsais zum Kinderspiel.
Das Abarbeiten eines Programmes wird standardmäßig mit der Geschwindigkeit 1 Befehl pro Sekunde vollzogen. Mit dem Schieberegler im Block Geschwindigkeit lässt sich ein Multiplikator für diese einstellen. Dabei gilt es zu beachten, dass das Programm bei der höchsten Einstellung (ganz rechts) so schnell wie möglich abgearbeitet wird.
Hier fehlt leider noch ein bisschen was ;-)
Helfen Sie jetzt Bonsai-Tools zu verbessern: github.com/rhein7
Weitere meiner Projekte finden Sie auf www.dibaku.de und auf GitHub!
Über Kritik oder Anregung würde ich mich sehr freuen! Sie erreichen mich über GitHub oder per Mail an jan.hillesheim@dibaku.de