Sinclair BASIC

Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från versionen som granskades den 5 juli 2022; kontroller kräver 2 redigeringar .

Sinclair BASIC (uppkallad efter uppfinnaren Sir Clive Sinclair ) är en dialekt av BASIC - programmeringsspråket som används på 8-bitars konsumentdatorer tillverkade av Sinclair Research och Timex Sinclair . Sinclair BASIC- tolken utvecklades av Nine Tiles Networks Ltd.

Ursprungligen designad 1979 för att passa in i 4K ROM på ZX80 -datorn . Denna version var en ofullständig implementering av 1978 års ANSI Minimum Standard . När den anpassades för datorerna ZX81 och TS1000 , som hade 8 KB ROM, förbättrades tolken och i versionen för ZX Spectrum-datorn med 16 KB ROM blev det en nästan komplett implementering av standarden.

Den ursprungliga Sinclair BASIC

Operatörer

Det finns 86 Sinclair BASIC - satser i ZX Spectrum-datorversionen, inklusive kommandon (50), funktioner (31) och andra nyckelord (5):

ABS , ACS , AND ¹, ASN , AT , ATN , ATTR , BEEP, BIN, BORDER, BRIGHT, CAT², CHR$ ³, CIRCLE, CLEAR, CLOSE#², CLS, CODE ³, CONTINUE, COPY, COS , DATA, DEF FN, DIM, DRAW, ERASE², EXP , FLASH, FN , FOR, FORMAT², GO SUB, GO TO, IF 4 , IN , INK, INKEY$ ³, INPUT, INT , INVERSE, LEN , LET 5 , LINE , LIST , LLIST , LN , LADDA , L _ _ _ _ _ , REM, RESTORE, RETURN, RND , RUN, SAVE, SCREEN$ ³, SGN , SIN , SQR , STEP , STR$ ³, TAB , TAN , THEN 4 , TO , USR , VAL 3, 6 , VAL$ ³, VERIFIERA

Operatörer finns endast i versioner för ZX81 och dess kloner TS1000 och TS1500 :

FAST, SCROLL, SLOW, UNPLOT, GOSUB, GOTO (istället för GO SUB, GO TO i ZX Spectrum-versionen)

I versionen av tolken för 128K-modeller (Spectrum 128K, Spectrum +2, +3, +2A och +2B) har två operatorer lagts till:

LEK, SPEKTRUM

Anteckningar

  1. AND, NOT och OR-funktionerna är logiska operatorer .
  2. CAT, CLOSE#, ERASE, FORMAT, MOVE och OPEN# är kommandon för att arbeta med filer på en ZX Microdrive- lagringsenhet. Om försök görs utan en sådan enhet (eller ett disksystem som stöder dessa kommandon), kommer de att resultera i ett fel .
  3. Strängvariabelnamn kan bara innehålla en bokstav.
    Så "LET A=5", "LET Apples=5" och "LET A$="Hej"" är korrekta, men "LET APPLES$="Fruit"" skulle vara fel.
  4. Det finns ingen ELSE-sats i IF-THEN(-ELSE)-villkoren.
    Alltså, istället för koden
       10 OM V=5 GÅ TILL 50 ANNARS GÅ TILL 100
    , måste du använda
       10 OM V=5 GÅ TILL 50
       20 GÅ TILL 100
  5. LET-satsen är obligatorisk (det vill säga "LET A=1" måste användas, inte "A=1"); vilket är en anmärkningsvärd skillnad från de flesta BASIC-dialekter.
  6. VAL-funktionen hanterar inte bara siffror utan även uttryck. Till exempel, "PRINT VAL(A$)", där strängen A$ innehåller "3*3+4+COS(0)", kommer att skriva ut siffran 14.

Till skillnad från BASIC-dialekter för konsumentdatorer som Microsoft BASIC , som använder funktionerna LEFT$(), MID$() och RIGHT$() för att komma åt delar av en sträng, använder Sinclair BASIC ett arrayliknande tillvägagångssätt. Till exempel kommer "A$ (5 TILL 10)" att returnera delsträngen som börjar vid den femte och slutar vid det tionde tecknet i strängvariabeln A$.

Tillägg och varianter

Källor

Länkar

Anteckningar

  1. Beta Basic Arkiverad 13 april 2016 på Wayback MachineWorld of Spectrums webbplats
  2. YS MegaBasic Arkiverad 25 mars 2016 på Wayback MachineWorld of Spectrums webbplats
  3. Laser Basic Arkiverad 26 april 2016 på Wayback MachineWorld of Spectrums webbplats
  4. Spektrum. Emergence" (Vega) . Hämtad 3 april 2016. Arkiverad från originalet 7 december 2014.