SuperBASIC
| SuperBASIC | |
|---|---|
| Basisdaten
| |
| Entwickler | Sinclair Research Ltd. |
| Erscheinungsjahr | 1984 |
| Betriebssystem | QDOS |
| Kategorie | BASIC zweiter Generation |
| Lizenz | Proprietär |
SuperBASIC ist eine erweiterte Variante der BASIC-Programmiersprache mit vielen Erweiterungen im Bereich des strukturellen Programmierens. Sie wurde bei Sinclair Research von Jan Jones in den frühen 1980ern entwickelt.
Eigentlich war SuperBASIC als der BASIC-Interpreter für einen Heimcomputer mit dem Entwicklungsnamen SuperSpectrum gedacht, welcher sich zu der Zeit in Entwicklung befand. Jedoch wurde dieses Projekt später abgebrochen, SuperBASIC wurde folglich in der ROM-Firmware des Sinclair QL Mikrocomputer (im Januar 1984 vorgestellt) integriert, außerdem fungierend als Kommandozeileninterpreter für das QDOS-Betriebssystem[1][2] des QL.
SuperBASIC war eines der ersten BASICs der zweiten Generation, welche in einem Betriebssystem eines Mikrocomputers vorhanden war (nicht wie BBC BASIC, welches 1981 erschien), was es möglich machte, das Betriebssystem vom Benutzer zu erweitern — wie erfolgt von Linus Torvalds in seinen frühen Jahren.
Erweiterte Funktionen
- RESPR für Residenzprozesse, z. B. um QDOS zu erweitern
- Parameterwahl zu Prozessen weitergeleitet
- Prozesse geben Parameter wie gewählt aus
IF-THEN-ELSE-END IF(wenn - dann - sonst - beenden wenn)FOR-NEXT-EXIT-END FOR(für - nächste/s - beenden - beenden für)REPeat-NEXT-EXIT-END REPeat(wiederholen - nächste/s - beenden - Wiederholen beenden)SELect ON-ON-REMAINDER-END REPeat(auswählen an - an - Rest - Wiederholen beenden)RETurn(Ausgabe) von innerhalb Prozessen und Funktionen- Datentypzwang zwischen numerischen und Zeichenkettenvariablen
- Parameter geben Datentypen zu formalen Parametern weiter
- Arrayoperationen: Schneiden, Verbinden etc.
LOCal(lokale) Arrays und (Zeichenketten-)VariablenAUTOmatic(automatische) Zeilennummerierung- relative
RESTORE&DATA(wiederherstellen & Daten)
Die folgende Funktion zeigt die letzten 8 dieser genannten Merkmale. Nach der Ausführung des Codes mit RUN und Eingabe von
PRINT weekdays$(Iso("19631122",1))
wird FRI als Ausgabe auf dem Bildschirm angezeigt. Bis zur Löschung (z. B. durch Eingabe von NEW), wird sich die Funktion ISO wie eine Erweiterung des Betriebssystems verhalten. Ähnlicherweise, laut dem QL-Benutzerhandbuch, "sind viele der Kommandos im Betriebssystem als Prozesse definiert."[3]
Beispiel
AUTO 11,2
DEFine FN Iso(S,O) LOCal y%,m%,d%,i$,n%,w%
REM Step 0 - to isolate components of date-stamp S="YEARMoDa" LET y%=S(1TO 4) : m%=S(5TO 6) : d%=S(7TO 8)
REM Step 1 - to initiate Lachman's Congruence LET i$=m%*2.56+ 193 : S=S(1TO 6)- 3
REM Step 2 - to compute the day-number within the week LET w%=(S(1TO 2)&"32"DIV 16+ S(1TO 4)DIV 4+ y%+ i$(2TO 3)+ d%)MOD 7
REM Step 3 - to return result
SELect ON O
ON O= 5 : n%=i$(2TO 3)
ON O= 4 : n%=y%
ON O= 3 : n%=m%
ON O= 2 : n%=d%
ON O= 1 : n%=w%
ON O= REMAINDER : n%=-1
END SELect
RETurn n%
REM data statements DIM weekdays$(6,3) RESTORE 190 FOR count=0 TO 6 : READ weekdays$(count)
100 DIM month$(12,9)
110 RESTORE
120 REM QL User Guide's "Data Read Restore" example ii
130 REM appropriately amended relative to example i
140 FOR count=1 TO 12 : READ month$(count)
150 DATA "January","February","March"
160 DATA "April","May","June"
170 DATA "July","August","September"
180 DATA "October","November","December"
190 DATA "SUN","MON","TUE","WED","THU","FRI","SAT"
199 END DEFine Iso
Bücher
- Donald Alcock: Illustrating Superbasic on the Sinclair QL. Cambridge University Press, 1985. ISBN 0-521-31517-4
- Roy Atherton: Good Programming with QL Superbasic. Longman Software, 1984. ISBN 0-582-29662-5
- A. A. Berk: QL SuperBasic. Granada Publishing, 1984. ISBN 0-246-12596-9
- Dick Meadows, Robin Bradbeer, Nigel Searle: Introduction to Superbasic on the Sinclair QL. Hutchinson Computer Publishing, 1984. ISBN 0-09-158951-7
- Dick Meadows, Robin Bradbeer, Nigel Searle: Making the Most of the Sinclair QL: QL Superbasic and Its Applications. Hutchinson Computer Publishing, 1985. ISBN 0-09-160561-X
- Andrew Nelson: Exploring the Sinclair QL: An Introduction to SuperBasic. Interface Publications, 1984. ISBN 0-907563-84-8
- John K. Wilson: QL Superbasic: A Programmer's Guide. Micro Press, 1984. ISBN 0-7447-0020-5
Einzelnachweise
- ↑ Illustrating Super-BASIC on the Sinclair QL. In: Computing History. Abgerufen am 6. Februar 2023 (englisch).
- ↑ Alberto Apostolo: Sinclair QL: mistakes, misfortune and so many regrets. In: RetroMagazineWorld. Abgerufen am 6. Februar 2023 (englisch).
- ↑ Stephen Berry: QL User Guide. 2. Auflage. Sinclair Research Ltd, Cambridge 1984 (englisch, me.uk).
- The Quantum Leap - to where?: a chapter from Sinclair and the 'Sunrise' Technology
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.
