BASIC-Tutorial (Vorwort, Installation, Kapitel 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11)

Compiler / Interpreter installieren und das erste Programm

Grundlagen

Nun wird es langsam interessanter. Innerhalb der nächsten Stunde werden Sie Ihr erstes Programm in BASIC schreiben und erfolgreich laufen lassen. Bevor es aber los gehen kann, sollten Sie noch einige grundlegende Dinge über die Programmierung wissen. Auf dieser Seite finden Sie nur das Allerwichtigste. Ausführlich behandelt werden die Themen in der Einführung in die Programmierung.

Um in BASIC programmieren zu können, benötigt man einen BASIC-Interpreter oder BASIC-Compiler (sprich: Kompailer). Ein Compiler übersetzt (compiliert) den Quelltext (besteht aus den einzelnen Programmierzeilen) zu einer Objektdatei (diese enthält die Binärdaten). Ein Linker (engl. to link = verbinden), der üblicherweise vom Compiler nach dem Compilieren gestartet wird - und dem Compiler in fast allen Fällen beiliegt -, linkt die Objektdatei(en) zu einer ausführbaren Datei (.exe unter Windows). Die .exe-Datei ist dann das ausführbare Programm.

Im Vergleich dazu wird von einem Interpreter der Quellcode zur Laufzeit interpretiert. Das bedeutet, dass zuerst der Interpreter gestartet werden muss und man erst mit ihm das Programm zum Laufen bringen kann. Das hat Nachteile: Der Quellcode muss immer mit-weitergegeben werden und der Interpreter muss auf jedem System vorher installiert werden, auf dem das Programm ausgeführt werden soll.

Manchmal fällt es schwer, eigenen Quellcode weiterzugeben, vor allem wenn Sie viele Arbeitsstunden für Planung, Programmierung und Ihre eigenen Ideen investiert haben. Wenn der Quellcode offen liegt (Open Source), hat jeder die Möglichkeit, diesen zu modifizieren, weiterzuverbreiten oder gar zu verkaufen. Erlaubt oder nicht ist dann eine Frage der Lizenz und dahingehend, welche Rechte Sie den Benutzern einräumen. Ob Sie Ihren Quellcode mitgeben wollen und unter welcher Lizenz Sie Ihre Programme verbreiten, ist eine Entscheidung, die Sie als Programmierer selbst treffen können.

In diesem Zusammenhang möchte ich auf eine mögliche Art der Lizenzierung hinweisen, die GNU General Public License (GPL) für freie Software. Insbesondere unter Linux, anderen UNIX-Systemen und zunehmend auch unter Windows wird die GPL sehr häufig verwendet. Sie räumen dabei den Nutzern sehr umfangreiche Rechte ein, insbesondere auch die kommerzielle Verwendung, Weiterverbreitung (auch gegen Geld!) und Abänderung Ihres Programms. Kopien Ihres Programms müssen dabei wieder unter der GPL lizenziert und dem neuen Benutzer die gleichen Rechte gegeben werden.

Das erste Programm

Bevor wir uns daran machen, einen BASIC-Compiler oder -Interpreter zu installieren, möchte ich das erste Programm vorstellen. Es ist Tradition, dass das erste Beispiel in vielen Programmierbüchern (und Tutorials) den Text hello, world! (bzw. Hallo Welt!) auf dem Bildschirm anzeigt. Dieser Tradition folgend, das erste Programm in BASIC:

PRINT "hello, world!"

Mit diesem Einzeiler ist es getan. Es sind wahrscheinlich keine Programmierkenntnisse nötig sind, um zu verstehen, was das obere Beispiel macht. In BASIC wurde versucht, Befehle zu verwenden, die einprägsam, intuitiv verständlich und leicht zu merken sind. Übrigens ist das mit ein Grund, weshalb häufig von BASIC behauptet wird (wurde), es sei leicht zu erlernen. Mit dem Befehl PRINT kann man Text auf dem Bildschirm anzeigen lassen. Näheres dazu später. Schon einmal vorweg: In BASIC ist es egal, ob man Befehle groß oder klein schreibt (also nicht case-sensitive).

In den nächsten Abschnitten stelle ich QBasic, einen BASIC-Interpreter für DOS (läuft auch unter Windows und emuliert auch unter Linux) und FreeBASIC, BASIC-Compiler für Windows und Linux, vor. Sie benötigen davon nur einen. Ich stelle beide vor und lasse Ihnen die Wahl, welchen Sie verwenden.

QBasic installieren (Interpreter für Windows und DOS):

Willkommen in der Vergangenheit. :-)
QBasic, in der letzten Version 1.1 von 1992, ist eine abgespeckte Version von Microsoft QuickBASIC 4.5. Während QuickBASIC ein vollwertiger Compiler ist, mit dem auch .exe-Dateien erstellt werden können, ist QBasic ein Interpreter. Es wird also immer QBasic benötigt, damit ein Programm ausgeführt werden kann.

Ich empfehle QBasic jenen, die gerne nostalgische Software ausprobieren möchten. Wenn das nicht auf Sie zutrifft, empfehle ich stattdessen FreeBASIC (s.u.).

QBasic unter Windows installieren:

Sie können QBasic vom offiziellen Microsoft FTP-Server herunterladen. Legen Sie einen neuen Ordner (Name egal, z.B. OLDDOS) an und verschieben Sie die Datei OLDDOS.EXE, die Sie gerade heruntergeladen haben, hinein. Starten Sie OLDDOS.EXE. Sie werden gefragt, ob Sie die Dateien extrahieren wollen, antworten Sie mit "y" (ja). Daraufhin werden einige Dateien entpackt und das Programm schließt sich wieder. Sie benötigen nur zwei Dateien, die zu QBasic gehören, QBASIC.EXE und QBASIC.HLP. Starten Sie QBASIC.EXE.

Läuft? Perfekt! Sie können mit "Erste Schritte mit QBasic" (s.u.) fortfahren.

Es kann vorkommen, dass QBasic auf neueren Windows-Versionen nicht mehr läuft. Als Ausweg können Sie entweder einen DOS-Emulator wie z.B. DOSBox verwenden oder Sie greifen auf einen anderen Compiler/Interpreter zurück, z.B. FreeBASIC (s.u.).

QBasic mit DOSBox unter Windows verwenden:

Falls QBasic nicht - wie oben beschrieben - unter Windows läuft, dann probieren Sie folgende Variante mit DOSBox: Laden Sie DOSBox von dosbox.com herunter und installieren Sie das Programm. Nach dem Starten (standardmäßig wird ein Link am Desktop erstellt) öffnet sich ein typisches DOS-Fenster. Am besten, Sie stellen gleich die deutsche Tastaturbelegung ein. Geben Sie dazu

keyb gr

ein. Drücken Sie kezb gr, weil y und z in der engl. Tastaturbelegung vertauscht sind.

Damit Sie auf Ihre Daten zugreifen können, müssen Sie ein Verzeichnis mounten (einhängen), auf das Sie dann über einen Laufwerksbuchstaben (C:) zugreifen können. Sie haben dann (real) nur Zugriff auf dieses eine Verzeichnis. Am einfachsten, Sie verschieben das vorher angelegte Verzeichnis (z.B. OLDDOS; bzw. wie Sie es genannt haben) im Windows Explorer ins Hauptverzeichnis (z.B. C:\) Ihrer Festplatte. Für den Laufwerksbuchstaben C: (bzw. bitte entsprechend abändern) können Sie unter DOSBox folgendes eingeben:

mount c c:\OLDDOS\

Geben Sie nun

c:

oder Ihren Laufwerksbuchstaben ein, um ins Hauptverzeichnis (in Wirklichkeit sehen Sie nur den Inhalt des OLDDOS-Verzeichnisses!) zu wechseln. Sie können nun QBasic mit

qbasic

starten. Fertig, QBasic läuft! Tipp: Sie können mit DOSBox übrigens auch alte Spiele testen. :-)

QBasic unter Linux mit DOSBox verwenden:

Auch unter Linux lässt sich QBasic sehr leicht emulieren. Die folgenden Anleitung zeigt, wie Sie DOSBox unter Ubuntu installieren: (Anm.: Getestet mit Ubuntu 7.10!)

Installieren Sie zunächst DOSBox (und wenn nötig Wget) mit:

apt-get install dosbox wget

Apt wählt automatisch alle weiteren benötigten Pakete aus, bestätigen Sie mit J (ja). Legen Sie danach ein Verzeichnis für die DOS-Programme an:

cd /home/benutzername/
mkdir olddos
cd olddos

benutzername ersetzen Sie natürlich durch Ihren Benutzernamen. Danach können wir die Datei herunterladen und DOSBox aufrufen:

wget ftp://ftp.microsoft.com/Softlib/MSLFILES/OLDDOS.EXE
dosbox

DOSBox läuft? Perfekt! Einfacher als unter Windows (dank Apt). :-)
Nun müssen Sie die OLDDOS.EXE-Datei aufrufen. Statt etwa WINE dazu zu verwenden (falls das überhaupt klappt!), nehmen wir gleich DOSBox! Geben Sie die folgenden Kommandos im DOSBox-Fenster (!) ein:

keyb gr
mount c /home/benutzername/olddos/
c:
olddos.exe

Der Ablauf ist der Gleiche wie oben bei der Windows-Installation beschrieben. Wir stellen das deutsche Tastaturlayout ein, mounten das olddos-Verzeichnis als Laufwerk C, wechseln in dieses und rufen die OLDDOS.EXE-Datei auf. Beantworten Sie die Frage Do you want to extract these files now? mit y (yes). Damit entpackt sich das selbstextrahierende Archiv.

Beachten Sie die Lizenzinformationen, die Sie in der Datei LICENSE.TXT finden. Wenn zutreffend, können Sie nun im selben Verzeichnis QBasic aufrufen:

qbasic

Von der Shell geht es übrigens auch direkt:

dosbox /home/benutzername/olddos/QBASIC.EXE

Es empfiehlt sich aber, das deutsche Tastaturlayout vorher einzustellen.

Erste Schritte mit QBasic:

Nachdem Sie QBasic gestartet haben, sehen Sie zunächst einmal den Startbildschirm. Nun gibt es 2 Möglichkeiten: Entweder man lässt sich eine kurze Einführung anzeigen, oder man drückt ESC und der Startbildschirm verschwindet. Wenn Sie nun Enter drücken, sehen Sie in den ersten paar Zeilen die wichtigsten Informationen zur Bedienung angezeigt. Das Wichtigste steht überhaupt in der 1. Zeile. Drücken Sie ESC um die Einführung auszublenden und probieren Sie es gleich aus. :-)

Drücken Sie die ALT-Taste. Nun können Sie sich mithilfe der Cursor-Tasten im Menü bewegen. Wenn Sie die Nach-Unten - Taste drücken, klappt das Menü auf, mit der Nach-Rechts und Nach-Links - Taste navigieren Sie zwischen den einzelnen Menüs. Mit der Nach-Unten und Nach-Oben - Taste können Sie sich im Menü bewegen und mit Enter wählen Sie einen Eintrag aus. Alternativ können Sie QBasic auch mit der Maus bedienen. Ggf. müssen Sie dazu erst mit Alt+Enter in den Vollbildmodus wechseln. Wenn Sie DOSBox verwenden, können Sie den Mauszeiger aus dem Fenster mit Strg+F10 wieder "befreien".

Probieren Sie QBasic aus. Die Bedienung ähnelt der eines normalen Texteditors und sollte Ihnen vertraut sein. Die Entwicklungsumgebung läuft. Tippen Sie den Quelltext des ersten Programmes ab:

PRINT "hello, world!"

Drücken Sie danach Shift+F5 oder klicken Sie auf Ausführen und Start. Wenn alles geklappt hat und hello, world! auf dem Bildschirm erscheint, können Sie mit Kapitel 1 fortfahren.

FreeBASIC unter Windows installieren (BASIC-Compiler):

FreeBASIC ist ein Compiler, Sie können damit also auch ausführbare Dateien erzeugen. FreeBASIC ist kostenlos verfügbar und wird unter der GPL (General Public License) verbreitet. Sie können FreeBASIC von Sourceforge herunterladen.

Öffnen Sie den Link zu Sourceforge, wählen Sie Binaries - Windows und installieren Sie das heruntergeladene Programm (selbsterklärend).

Um es uns so einfach wie möglich zu machen, installieren wir die Entwicklungsumgebung FBIde. Sie können FBIde auch von Sourceforge herunterladen. Wählen Sie die neueste Version aus (Anm.: getestet mit 0.4.6) und downloaden und installieren Sie das Programm.

Starten Sie FBIde vom Desktop (wenn Sie einen Link erstellen haben lassen). Möglicherweise erhalten Sie beim Start die Fehlermeldung Compiler path is either not set or is corrupt. Set correct path now?”. Ursache dafür ist, dass Sie FBIde zuerst bekannt geben müssen, in welchem Verzeichnis Sie FreeBASIC installiert haben. Klicken Sie auf Ja und wählen Sie die Datei fbc.exe aus. In meinem Fall liegt Sie unter C:\Programme\FreeBASIC\. Wählen Sie fbc.exe aus und klicken Sie auf öffnen. Fertig, FBIde läuft.

FBIde lässt sich wie ein normaler Texteditor bedienen (diese Erfahrung sollten Sie mitbringen!). Zunächst schreiben Sie den Quellcode wie jeden anderen Text im Editor. Speichern Sie danach die Datei ab (z.B. als HelloWorld.bas; BASIC-Quellcode haben üblicherweise die Endung .bas). Wenn Sie nun auf Run->Compile&Run klicken (oder F9 drücken), wird das Programm compiliert und gleich ausgeführt. Danach wird das Programm aber sofort wieder geschlossen. Scheinbar hat soweit also alles funktioniert (wenn keine Fehlermeldung gekommen ist).

Um zu verhindern, dass das Fenster geschlossen wird, können wir uns mit einem "Trick" behelfen. Schreiben Sie in eine weitere Zeile den Befehl SLEEP. SLEEP wartet solange, bis Sie eine Taste drücken.

PRINT "hello, world!"
SLEEP

Drücken Sie nochmal F9 (vorher speichern!), der Text hello, world! sollte auf dem Bildschirm erscheinen. Gratulation, Ihr erstes Programm läuft!

Wichtig ist, dass Sie Compile&Run, und nicht nur Run wählen! Sonst wird das Programm nicht neu compiliert, sondern die letzte compilierte Version verwendet. Wenn Sie Änderungen durchgeführt haben, würden diese sonst nicht berücksichtigt werden.

Tipp: Im selben Verzeichnis, in dem sich Ihre .bas-Datei befindet, hat FreeBASIC eine .exe-Datei mit demselben Namen erstellt. Das ist das ausführbare Programm, das Sie z.B. an Freunde weitergeben könnten.

Noch ein Tipp zu SLEEP: In den folgenden Quellcode-Beispielen ist SLEEP nicht extra am Ende aufgeführt. Schreiben Sie SLEEP wenn nötig selbst in einer eigenen Zeile dahinter.

Für Interessierte: Links und Downloadmöglichkeiten weiterer BASIC-Compiler und -Interpreter finden Sie unter mindteq.com.

Konventionen im Tutorial

Eine kurze Erklärung der im Tutorial verwendeten Konventionen:

So gekennzeichnete Beispiele können Sie nicht direkt vom Compiler/Interpreter ausführen
lassen, da so nur eine einzelne Programmierzeile, ein Programmausschnitt oder die
Syntax (Grammatik) eines Befehls/einer Anweisung/... dargestellt wird.
Diese Programmzeile(n) können Sie bei Bedarf in ein Programm einbauen.

Ebenfalls so gekennzeichnet werden Beispiele, in denen etwas einzugeben ist
(z.B. in der Shell), wie z.B. oben bei der Installation unter Linux (selten).

So werden ganze Quellcode-Beispiele (Programme) gekennzeichnet. Sie können diese 1:1 übernehmen (besser: selber tippen!) und vom Compiler ausführen lassen. Damit Sie die Materie leichter verstehen und sich diese besser merken können, sollten Sie diese Beispiele auf alle Fälle ausprobieren!

Wichtige Fachbegriffe und Befehle werden - zumindest - beim ersten Vorkommen fett gedruckt dargestellt. Besonders wichtige Informationen können auch fett gedruckt besonders hervorgehoben werden.

Kursiv werden Eigennamen, Verzeichnisse, aber auch Abkürzungen und verschiedene Namen/Texte/Zitate (Klicken Sie auf ...) gekennzeichnet.

Vorheriges Kapitel Nächstes Kapitel