ndr-nkc.de ndr-nbc.de
  
Startseite
News
 
NDR-NKC
Geräte Z80
Geräte 68000
Geräte 8088
 
NKC Emulator
 
Z80 Section
Baugruppen
ROM's
Software
68000 Section
Baugruppen
ROM's
PASCAL/S
Software
CP/M 68K
8088 Section
Baugruppen
Downloads
 
Bussysteme
Stromversorgung
Input / Output
Grafikkarten
Speicherkarten
Massenspeicher
Weitere Baugruppen
 
Projekte
 
Dokumentation
Datenblätter
Glossar
Portraits
Links

Impressum

 

Vorteile & Nachteile des CBASIC Compilers

BASIC hat im Vergleich zu Assembler und auch zu anderen höheren Programmiersprachen wie C oder PASCAL einige Vorteile, aber auch viele Nachteile. Hier folgt eine kleine Liste anhand der man entscheiden kann, ob CBASIC für ein geplantes Projekt geeignet ist.

Weitere Beiträge

Sprachumfang des CBASIC-Compilers
Definieren eigner Funktionen und Prozeduren
Auswertung von Kommandozeilenparametern
Arbeiten mit Dateien

Am Ende dieses Beitrages steht die Dokumentation (in englischer Sprache) und ein Disketten-Image für den NKC-Emulator zum Download zur Verfügung.

Vorteile

Leicht erlernbare Sprache

Durch die steile Lernkurve kann man mit BASIC schnell zum Ergebnis und zu einem ersten Prototypen gelangen. CBASIC ist gut geeignet für kleine Programme und Tools und eignet sich besonders für Anfänger in der Programmierung.

BCD Arithmetik

Der CBASIC Compiler behandelt Fließkomma-Zahlen im Gegensatz zum C-Compiler und PASCAl-Compiler im BCD-Format. Dieses ist weniger anfällig für Rundungs-Fehler und eignet sich deshalb besonders für kaufmännische Berechnungen. Alle Fließkomma-Zahlen haben eine Genauigkeit von 12 signifikanten Stellen.

Funktionsdeklarationen

Im Gegensatz zu vielen anderen BASIC Dialekten unterstützt CBASIC die Definition von Funktionen und Prozeduren. Definierte Funktionen können einzeilig oder mehrzeilig sein und über ihren Namen angesprochen werden. Beispiele dazu finden sich in den folgenden Beiträgen.

Einfacher Dateizugriff

Programme, die sequentiell oder satzbasiert aus Dateien lesen oder in Dateien schreiben sind einfach umzusetzen.

Include Dateien

CBASIC unterstützt Include-Dateien, mit denen ein Programm in kleinere und besser wartbare und getestete Blöcke aufgeteilt werden kann.

Nachteile

Geringe Performance

Gegenüber Assembler und C-Programmen ist die Geschwindigkeit der Ausführung von Programmen eher gering. Bei CBASIC ist dies auch auf die Verwendung des BCD Formats für Fließkomma Zahlen zurückzuführen. Bei vielen Programmen ist die Geschwindigkeit jedoch nicht entscheidend.

Geringer Sprachumfang

BASIC bietet nur die notwendigsten Funktionen und Methoden und unterstützt nur wenige Datentypen. Strukturen und Records können nicht definiert werden.

Wartbarkeit

BASIC ist eine unstrukturierte Sprache, bei der größere Programme schnell unübersichtlich werden. Sprungziele und Unterprogramme müssen mit Zeilennummern versehen werden, benannte Sprunziele gibt es bei CBASIC nicht. Bei CBASIC müssen die Sprungziele nicht aufsteigend im Quellcode erscheinen.

Umfang der Programme

Damit CBASIC Programme unter CP/M ausgeführt werden können wird immer die umfangreiche Laufzeit-Bibliothek CB68.L68 eingebunden. Selbst das kleinste mögliche Programm erzeugt eine ausführbare Datei mit 20 kByte Länge.

print "Hallo Welt"

Je nach Anwendung kann man jedoch durchaus mit ein paar kByte zusätzlicher Größe der ausführbaren Datei leben. Gegenüber C und PASCAL hält sich die zusätzliche Größe der Programmdatei in Grenzen.

Ökosystem

Im Vergleich zu anderen höheren Programmiersprachen wie C oder PASCAL existieren relativ wenige Beispiele, kein Debugger und keine Bibliotheken.

Fehlermeldungen

Der CBASIC Compiler gibt keine klarschriftlichen Fehlermeldungen aus, wenn man mal daneben gegriffen hat. Statt dessen wird ein numerischer Fehlercode angegeben und man muss immer in der Dokumentation nachsehen, was der Fehlercode zu bedeuten hat.

Dokumentation

Der CBASIC-Compiler für CP/M 68 ist eine Entwicklung von Digital Research aus dem Jahre 1983, lange bevor das Internet erfunden wurde. Dokumentationen aus dieser Zeit sind heute nur schwer zu finden, insbesondere bei nicht so weit verbreiteten Systemen.

Die aktuell verfügbaren Dokumentationen sind grundsätzlich nur in englischer Sprache verfügbar und beziehen sich auf andere Versionen des Compilers.

CBASIC 1.0
83Seiten
2,6 MByte
CBASIC Compiler CB86 - Programmers Guide
Die PDF ist für den im Funktionsumfang gleichwertigen Compiler für 8088/8086 Prozessoren, lässt sich jedoch auf CB68 für 68000 Prozessoren anwenden.
Aus dem Inhalt
Beschreibung des Compilers und Linkers, Kommandozeilen-Parameter, Speicherbelegung, Datentypen
PDF öffnen
CBASIC 1.0
189 Seiten
5,3 MByte
CBASIC Language Reference Manual
Die PDF bezieht sich auf den Compiler für 8088/8086 Prozessoren, lässt sich jedoch auf CB68 für 68000 Prozessoren anwenden.
Aus dem Inhalt
Datentypen, Variablen, Arrays, Ausdrücke, Alle Funktionen und Befehle, Definieren eigener Funktionen, Eingabe und Ausgabe, Compiler-Schalter, Include-Dateien, ...
PDF öffnen

Download

Ich habe ein Diskimage zusammengestellt, welches sich mit dem NKC Emulator einsetzen lässt. Das Image ist bootfähig und enthält alle notwendigen Dateien und Programme zum Arbeiten mit dem CBASIC Compiler.

CBASIC.IMG
236 kByte
Aus dem Inhalt
Betriebssystem CP/M 68K, Basic-Compiler CB68.68K, Laufzeitbibliothek CB68.L68, Linker LINK68, Relocator RELOC, PIP, STAT, MORE, EDIT und einiges mehr. Die Submit-Datei MAKE.SUB und alle gezeigten Beispiele. Das Disk-Image wird aktualisiert, wenn die Beiträge erweitert werden.
Image laden