Sinclair BASIC

Material iz Vikipedii -- svobodnoi entsiklopedii
Pereiti k navigatsii Pereiti k poisku

Sinclair BASIC (nazvan po familii izobretatelia sera Klaiva Sinklera) -- dialekt iazyka programmirovaniia BASIC, primeniavshiisia na 8-razriadnykh bytovykh komp'iuterakh proizvodstva Sinclair Research i Timex Sinclair. Interpretator Sinclair BASIC razrabotan kompaniei Nine Tiles Networks Ltd.

Iznachal'no razrabotan v 1979 godu dlia razmeshcheniia v 4 kilobaitakh PZU komp'iutera ZX80. Eta versiia predstavliala soboi nepolnuiu realizatsiiu minimal'nogo standarta ANSI 1978 goda. Pri adaptatsii dlia komp'iuterov ZX81 i TS1000, imevshikh 8 KB PZU, interpretator byl uluchshen i v versii dlia komp'iutera ZX Spectrum s 16 KB PZU stal pochti polnoi realizatsiei standarta.

Original'nyi Sinclair BASIC

[pravit' | pravit' kod]
Sessiia redaktirovaniia v ZX81 BASIC, vnesenie izmenenii v rabotu komp'iuternoi igry.

Bol'shaia verkhniaia chast' ekrana soderzhit kod tekushchei zagruzhennoi programmy, 3D Monster Maze. Tekushchaia vybrannaia stroka pomechena <>, invertirovannym simvolom znaka 'bol'she'. Nizhniaia chast' ekrana soderzhit tekushchuiu versiiu redaktiruemoi stroki, nakhodiashcheisia v bufere strochnogo redaktora. Tekushchaia pozitsiia vvoda pomechena invertirovannoi bukvoi, oboznachaiushchei rezhim vvoda, bukva 'L' oboznachaet rezhim obychnogo vvoda bukv. Pol'zovatel' izmenil kolichestvo iteratsii v tsikle zaderzhki, chtoby povysit' skorost' igry. Nazhatie klavishi vvoda podtverdit vnesenie izmenenii.

Operatory

[pravit' | pravit' kod]

V versii dlia komp'iutera ZX Spectrum sushchestvuet 86 operatorov Sinclair BASIC, vkliuchaia komandy (50), funktsii (31) i drugie kliuchevye slova (5):

ABS, ACS, AND1, ASN, AT, ATN, ATTR, BEEP, BIN, BORDER, BRIGHT, CAT2, CHR$3, CIRCLE, CLEAR, CLOSE#2, CLS, CODE3, CONTINUE, COPY, COS, DATA, DEF FN, DIM, DRAW, ERASE2, EXP, FLASH, FN, FOR, FORMAT2, GO SUB, GO TO, IF4, IN, INK, INKEY$3, INPUT, INT, INVERSE, LEN, LET5, LINE, LIST, LLIST, LN, LOAD, LPRINT, MERGE, MOVE2, NEW, NEXT, NOT1, OPEN#2, OR1, OUT, OVER, PAPER, PAUSE, PEEK, PI, PLOT, POINT, POKE, PRINT, RANDOMIZE, READ, REM, RESTORE, RETURN, RND, RUN, SAVE, SCREEN$3, SGN, SIN, SQR, STEP, STR$3, TAB, TAN, THEN 4, TO, USR, VAL3, 6, VAL$3, VERIFY

Operatory, prisutstvuiushchie tol'ko v versiiakh dlia ZX81 i ego klonov TS1000 i TS1500:

FAST, SCROLL, SLOW, UNPLOT, GOSUB, GOTO (vmesto GO SUB, GO TO v versii dlia ZX Spectrum)

V versii interpretatora dlia 128K modelei (Spectrum 128K, Spectrum +2, +3, +2A i +2B) bylo dobavleno dva operatora:

PLAY, SPECTRUM

Primechaniia

[pravit' | pravit' kod]
  1. Funktsii AND, NOT i OR iavliaiutsia logicheskimi operatorami.
  2. CAT, CLOSE#, ERASE, FORMAT, MOVE i OPEN# iavliaiutsia komandami dlia raboty s failami na ustroistve khraneniia dannykh ZX Microdrive, pri popytke ispol'zovaniia bez nalichiia takogo ustroistva (ili diskovoi sistemy, podderzhivaiushchei eti komandy) privodiat k oshibke.
  3. Imena strokovykh peremennykh mogut soderzhat' tol'ko odnu bukvu.
    Takim obrazom, komandy <>, <> i "LET A$="Hello"" iavliaiutsia pravil'nymi, no "LET APPLES$="Fruit"" budet oshibochnoi.
  4. Operator ELSE v IF--THEN(--ELSE) usloviiakh ne predusmotren.
    Takim obrazom, vmesto koda
    10 IF V=5 THEN GO TO 50 ELSE GO TO 100
    nuzhno ispol'zovat'
    10 IF V=5 THEN GO TO 50
    20 GO TO 100
  5. Operator LET iavliaetsia obiazatel'nym (to est' nuzhno ispol'zovat' <>, no ne <>); chto iavliaetsia zametnym otlichiem ot bol'shinstva dialektov iazyka BASIC.
  6. Funktsiia VAL obrabatyvaet ne tol'ko chisla, no i vyrazheniia. Naprimer, <>, gde stroka A$ soderzhit <<3*3+4+COS(0)>>, vyvedet chislo 14.

V otlichie ot dialektov BASIC dlia bytovykh komp'iuterov, podobnykh Microsoft BASIC, gde dlia dostupa k fragmentam strok ispol'zuiutsia funktsii LEFT$(), MID$() i RIGHT$(), Sinclair BASIC ispol'zuet sposob, podobnyi rabote s massivami. Naprimer, <> verniot podstroku, nachinaiushchuiusia s piatogo i konchaiushchuiusia desiatym simvolom strokovoi peremennoi A$.

Rasshireniia i varianty

[pravit' | pravit' kod]
  • Timex BASIC -- dialekt, ispol'zuemyi na Spectrum-sovmestimom komp'iutere TS2068 (no ne TS2048, kotoryi ispol'zuet obychnyi Sinclair BASIC). Pomimo standartnykh operatorov Sinclair BASIC, imeet shest' dopolnitel'nykh: DELETE, FREE, ON ERR, RESET, SOUND, STICK.
  • Beta BASIC[angl.], rasshirenie Sinclair BASIC, vypushchennoe v 1983 godu, razrabotchik -- Dr. Andy Wright iz kompanii BetaSOFT[1]. Rasprostraneno mnenie o tom, chto eto polnotsennyi interpretator, argumentirovannoe tem, chto v niom imeetsia sobstvennyi redaktor programm. Na samom dele Beta BASIC (kak i ostal'nye rasshireniia) ne pozvoliaet sozdavat' programmy, rabotaiushchie bez zagruzki koda Beta BASIC, i ispol'zuet protsedury PZU (Sinclair BASIC).
  • YS MegaBasic[angl.] -- razrabotano v 1984 godu[2] Maikom Limenom (angl. Mike Leaman) iz kompanii Your Spectrum, imeet operatory while, repeat, until, komandy dlia upravleniia naborom spraitov. Rasshirenie natseleno na oblegchenie sozdanie igrovykh i uchebnykh programm. Soprovozhdalos' programmoi Sprite Designer dlia sozdaniia spraitov.
  • PRO-DOS, rasshirenie, razrabotannoe kompaniei HJB v 1985 godu.
  • Laser BASIC, rasshirenie, razrabotannoe Oasis Software v 1986 godu[3]. Prednaznachalos' spetsial'no dlia sozdaniia igrovykh programm, v kakom kachestve i stalo populiarno (tak, v Rossii na etom iazyke byla napisana igra <<Podkidnoi durak>> ot Viacheslava Mednonogova[4]). Etot Beisik vkhodil v paket Laser Compact, takzhe vkliuchavshii vpechatliaiushchie demo-programmy i kompiliator Beisika Laser Compiler.
  • SAM BASIC, takzhe razrabotannyi Dr. Andy Wright, iavlialsia interpretatorom BASIC dlia komp'iutera SAM Coupe i imel obratnuiu sovmestimost' s versiei Sinclair BASIC dlia ZX Spectrum.
  • Show, rasshirenie, prednaznachennoe ne dlia programmirovaniia, a dlia sozdaniia prostykh prezentatsionnykh rolikov. Soderzhit demonstratsionnuiu programmu. Dopolnitel'nye operatory pozvoliaiut sozdavat' begushchie stroki i nadpisi, skrolliruiushchiesia v liubom napravlenii i vyvodimye raznymi shriftami. Rasshirenie okazalos' vostrebovannym studiiami kabel'nogo televideniia, vyvodivshimi takim obrazom svoiu programmu na den'. Imeet versiiu, adaptirovannuiu dlia IS-DOS[istochnik ne ukazan 3611 dnei].
  • Sinclair Extended BASIC iavliaetsia razvivaiushchimsia retro-proektom, tsel'iu kotorogo iavliaetsia sozdanie uluchshennoi versii Sinclair BASIC (beta-versiia byla dostupna na iiul' 2005).

Istochniki

[pravit' | pravit' kod]

Ssylki

[pravit' | pravit' kod]

Primechaniia

[pravit' | pravit' kod]
  1. | Beta Basic Arkhivnaia kopiia ot 13 aprelia 2016 na Wayback Machine na saite World of Spectrum
  2. | YS MegaBasic Arkhivnaia kopiia ot 25 marta 2016 na Wayback Machine na saite World of Spectrum
  3. | Laser Basic Arkhivnaia kopiia ot 26 aprelia 2016 na Wayback Machine na saite World of Spectrum
  4. | <> (Vega) . Data obrashcheniia: 3 aprelia 2016. Arkhivirovano 7 dekabria 2014 goda.
Dialekty iazyka programmirovaniia Beisik
Klassicheskie
Perekhodnye
Protsedurnye
Ob'ektnye
Mobil'nye
Konsol'nye
Istochnik -- https://ru.wikipedia.org/w/index.php?title=Sinclair_BASIC&oldid=146219625