Sinclair BASIC

Aktuální verze stránky ještě nebyla zkontrolována zkušenými přispěvateli a může se výrazně lišit od verze recenzované 5. července 2022; kontroly vyžadují 2 úpravy .

Sinclair BASIC (pojmenovaný po vynálezci Siru Clivu Sinclairovi ) je dialekt programovacího jazyka BASIC používaný na 8bitových spotřebitelských počítačích vyráběných společnostmi Sinclair Research a Timex Sinclair . Interpret Sinclair BASIC byl vyvinut společností Nine Tiles Networks Ltd.

Původně navrženo v roce 1979 , aby se vešlo do 4K ROM počítače ZX80 . Tato verze byla neúplnou implementací minimálního standardu ANSI z roku 1978 . Při úpravě pro počítače ZX81 a TS1000 , které měly 8 KB ROM, byl interpret vylepšen a ve verzi pro počítač ZX Spectrum s 16 KB ROM se stal téměř kompletní implementací standardu.

Původní Sinclair BASIC

Operátoři

V počítačové verzi ZX Spectrum je 86 příkazů Sinclair BASIC , včetně příkazů (50), funkcí (31) a dalších klíčových slov (5):

ABS , ACS , AND ¹, ASN , AT , ATN , ATTR , BEEP, BIN, BORDER, BRIGHT, CAT², CHR$ ³, CIRCLE, CLEAR, CLOSE#², CLS, CODE ³, POKRAČOVAT, KOPÍROVAT, 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 , LOAD, LPRINT, MERGE, MOVE², NOVÝ, NEXT, NOT ¹, OPEN#², NEBO ¹, OUT, OVER, PAPER, PAUSE, PEEK , PI , PLOT, BOD , POKE, TISK, RANDOMIZE, READ , REM, RESTORE, RETURN, RND , RUN, SAVE, SCREEN$ ³, SGN , SIN , SQR , STEP , STR$ ³, TAB , TAN , THEN 4 , TO , USR , VAL 3, 6 , VAL$ ³, VERIFY

Operátoři přítomni pouze ve verzích pro ZX81 a jeho klony TS1000 a TS1500 :

FAST, SCROLL, SLOW, UNPLOT, GOSUB, GOTO (místo GO SUB, GO TO ve verzi ZX Spectrum)

Ve verzi interpretru pro modely 128K (Spectrum 128K, Spectrum +2, +3, +2A a +2B) byly přidány dva operátory:

PLAY, SPEKTRUM

Poznámky

  1. Funkce AND, NOT a OR jsou logické operátory .
  2. CAT, CLOSE#, ERASE, FORMAT, MOVE a OPEN# jsou příkazy pro práci se soubory na úložném zařízení ZX Microdrive , pokud se o to pokusíte bez takového zařízení (nebo diskového systému, který tyto příkazy podporuje), dojde k chybě. .
  3. Názvy řetězcových proměnných mohou obsahovat pouze jedno písmeno.
    Takže "LET A=5", "LET Apples=5" a "LET A$="Ahoj"" jsou správné, ale "LET APPLES$="Ovoce"" by bylo špatně.
  4. V podmínkách IF-THEN(-ELSE) není žádný příkaz ELSE.
    Místo kódu
       10 IF V=5 THEN GO TO 50 ELSE GO TO 100
    , musíte použít
       10 IF V=5 THEN GO TO 50
       20 GO TO 100
  5. Příkaz LET je povinný (to znamená, že musí být použito "LET A=1", nikoli "A=1"); což je výrazný rozdíl od většiny BASIC dialektů.
  6. Funkce VAL si poradí nejen s čísly, ale i s výrazy. Například "PRINT VAL(A$)", kde řetězec A$ obsahuje "3*3+4+COS(0)", vytiskne číslo 14.

Na rozdíl od dialektů BASIC pro spotřebitelské počítače, jako je Microsoft BASIC , které pro přístup k částem řetězce používají funkce LEFT$(), MID$() a RIGHT$(), používá Sinclair BASIC přístup podobný poli. Například "A$ (5 TO 10)" vrátí podřetězec začínající na pátém a končící na desátém znaku řetězcové proměnné A$.

Rozšíření a varianty

Zdroje

Odkazy

Poznámky

  1. Beta Basic Archived 13. dubna 2016 na Wayback Machine na webu World of Spectrum
  2. YS MegaBasic Archived 25. března 2016 na Wayback Machine na webu World of Spectrum
  3. Laser Basic Archived 26. dubna 2016 na Wayback Machine na webu World of Spectrum
  4. Spektrum. Vznik“ (Vega) . Získáno 3. dubna 2016. Archivováno z originálu 7. prosince 2014.