Sinclair BASIC
Den aktuelle version af siden er endnu ikke blevet gennemgået af erfarne bidragydere og kan afvige væsentligt fra den
version , der blev gennemgået den 5. juli 2022; checks kræver
2 redigeringer .
Sinclair BASIC (opkaldt efter opfinderen Sir Clive Sinclair ) er en dialekt af BASIC - programmeringssproget , der bruges på 8-bit forbrugercomputere fremstillet af Sinclair Research og Timex Sinclair . Sinclair BASIC- tolken er udviklet af Nine Tiles Networks Ltd.
Oprindeligt designet i 1979 til at passe ind i 4K ROM'en på ZX80 computeren . Denne version var en ufuldstændig implementering af 1978 ANSI Minimum Standard . Når den blev tilpasset til ZX81- og TS1000- computere , som havde 8 KB ROM, blev tolken forbedret, og i versionen til ZX Spectrum-computeren med 16 KB ROM blev det en næsten komplet implementering af standarden.
Den originale Sinclair BASIC
Operatører
Der er 86 Sinclair BASIC - sætninger i ZX Spectrum-computerversionen, inklusive kommandoer (50), funktioner (31) og andre nøgleord (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 , LOAD, LPRINT, FLOT, MOVE², NEW, NEXT, NOT ¹, OPEN#², OR ¹, OUT, OVER, PAPIR, PAUSE, PEEK , PI , PLOT, PEK , POKE, PRINT, RANDOMISER, LÆS , REM, RESTORE, RETURN, RND , RUN, SAVE, SCREEN$ ³, SGN , SIN , SQR , STEP , STR$ ³, TAB , TAN , THEN 4 , TO , USR , VAL 3, 6 , VAL$ ³, VERIFY
Operatører til stede kun i versioner til ZX81 og dens kloner TS1000 og TS1500 :
FAST, SCROLL, SLOW, UNPLOT, GOSUB, GOTO (i stedet for GO SUB, GO TO i ZX Spectrum-versionen)
I versionen af tolken til 128K-modeller (Spectrum 128K, Spectrum +2, +3, +2A og +2B) er to operatorer blevet tilføjet:
LEG, SPEKTRUM
Noter
- AND, NOT og OR funktionerne er logiske operatorer .
- CAT, CLOSE#, ERASE, FORMAT, MOVE og OPEN# er kommandoer til at arbejde med filer på en ZX Microdrive -lagerenhed , hvis de forsøges uden en sådan enhed (eller et disksystem, der understøtter disse kommandoer), vil de resultere i en fejl .
- Strengvariablenavne kan kun indeholde ét bogstav.
Så "LET A=5", "LET Apples=5" og "LET A$="Hej"" er korrekte, men "LET APPLES$="Fruit"" ville være forkert.
- Der er ingen ELSE-sætning i IF-THEN(-ELSE) betingelser.
I stedet for koden
10 HVIS V=5 SÅ GÅ TIL 50 ELLER GÅ TIL 100
, skal du bruge
10 HVIS V=5 SÅ GÅ TIL 50
20 GÅ TIL 100
- LET-sætningen er obligatorisk (det vil sige, "LET A=1" skal bruges, ikke "A=1"); hvilket er en bemærkelsesværdig forskel fra de fleste BASIC dialekter.
- VAL-funktionen håndterer ikke kun tal, men også udtryk. For eksempel vil "PRINT VAL(A$)", hvor strengen A$ indeholder "3*3+4+COS(0)", udskrive tallet 14.
I modsætning til BASIC-dialekter for forbrugercomputere som Microsoft BASIC , der bruger funktionerne LEFT$(), MID$() og RIGHT$() til at få adgang til dele af en streng, bruger Sinclair BASIC en array-lignende tilgang. For eksempel vil "A$ (5 TIL 10)" returnere understrengen, der starter ved den femte og slutter ved den tiende karakter af strengvariablen A$.
Udvidelser og varianter
- Timex BASIC er den dialekt, der bruges på den Spectrum-kompatible TS2068- computer (men ikke TS2048 , som bruger den almindelige Sinclair BASIC). Ud over standard Sinclair BASIC-operatører har den seks ekstra: SLET, GRATIS , ON ERR, RESET, SOUND, STICKE .
- Beta BASIC , en udvidelse af Sinclair BASIC udgivet i1983 afDr. Andy Wright fra BetaSOFT [1] . Det er en udbredt opfattelse, at dette er en fuldgyldig tolk, argumenteret med det faktum, at den har sin egen programredaktør. Faktisk tillader Beta BASIC (som andre udvidelser) dig ikke at oprette programmer, der virker uden at downloade Beta BASIC-kode, og brugerROM(Sinclair BASIC) rutiner.
- YS MegaBasic - udviklet i1984 [2] afMike Leamanfra Your Spectrum, harmens, gentag, indtilstatements, kommandoer til at manipulere et sætsprites. Udvidelsen har til formål at lette skabelsen af spil og undervisningsprogrammer. Ledsaget afSprite Designertil at skabe sprites.
- PRO-DOS , en udvidelse udviklet af HJB i 1985 .
- Laser BASIC , en udvidelse udviklet af Oasis Software i 1986 [3] . Det var specifikt beregnet til at skabe spilprogrammer, i hvilken kapacitet det blev populært (for eksempel i Rusland blev spillet " Throwing Fool " af Vyacheslav Mednonogov [4] skrevet på dette sprog ). Denne BASIC var en del af Laser Compact-pakken, som også omfattede imponerende demoprogrammer og BASIC Laser Compiler.
- SAM BASIC , også udviklet af Dr. Andy Wright, var BASIC-fortolkeren til SAM Coupé -computeren og var bagudkompatibel med ZX Spectrum-versionen af Sinclair BASIC.
- Show , en udvidelse designet ikke til programmering, men til at skabe simple præsentationsvideoer. Indeholder et demoprogram. Yderligere operatører giver dig mulighed for at oprette tickers og etiketter, der ruller i enhver retning og vises i forskellige skrifttyper. Udvidelsen viste sig at være efterspurgt af kabel-tv-studier, som dermed viste deres program for dagen. Har en version tilpasset til IS-DOS .
- Sinclair Extended BASIC er et igangværende retroprojekt, der har til formål at skabe en forbedret version af Sinclair BASIC (beta var tilgængelig fra juli 2005 ).
Kilder
- Vickers, Steven (1982). Sinclar ZX Spectrum BASIC programmering . Sinclair Research.
- Ardley, Neil (1984). Sinclair ZX Spectrum+ Brugervejledning . Dorling Kindersley med Sinclair Research. ISBN 0-86318-080-9 .
- BASIC dialekter til ZX Spectrum . - Peter, 1992. - ISBN 5-7190-0001-1 .
Links
Noter
- ↑ Beta Basic Arkiveret 13. april 2016 på Wayback Machine på World of Spectrum- webstedet
- ↑ YS MegaBasic Arkiveret 25. marts 2016 på Wayback Machine på World of Spectrum- webstedet
- ↑ Laser Basic Arkiveret 26. april 2016 på Wayback Machine på World of Spectrum- webstedet
- ↑ Spektrum. Emergence" (Vega) . Hentet 3. april 2016. Arkiveret fra originalen 7. december 2014. (ubestemt)