Alapvető Vilnius

Az oldal jelenlegi verzióját még nem ellenőrizték tapasztalt közreműködők, és jelentősen eltérhet a 2019. október 25-én felülvizsgált verziótól ; az ellenőrzések 5 szerkesztést igényelnek .
Alapvető Vilnius
Nyelvóra algoritmikus, procedurális
A végrehajtás típusa Fordító típusú értelmező
Megjelent 1985
Fájlkiterjesztés _ .BAS, COD
Típusrendszer laza
Befolyásolva MSX BASIC

A BASIC Vilnius (más néven BASIC-86 ) a BASIC programozási nyelv megvalósítása 16 bites otthoni és iskolai számítógépekhez , PDP-11 architektúrájú processzorokkal . Eredetileg a Vilniusi Állami Egyetem Számítástechnikai Központjában (VTsKP VGU) fejlesztették ki 1985 -ben . Számítógépeken használt: DVK , BK-0010/BK-0011 , UKNTS , Nemiga .

Úgy tűnik, a BASIC Vilniust az MSX BASIC erős hatása alatt fejlesztették ki : a legtöbb operátor és függvény neve, valamint a hibaüzenetek kódjai megegyeznek. De a Basic Vilniusban nincs lehetőség több utasítás egy sorba írására, nincs operátor PLAY, nincsenek operátorok a DEFINT, DEFDBL stb. változók típusának beállítására, valamint néhány egyéb szolgáltatásra.

Sok Vilnius Basicet használó számítógépen a dollár $ helyett (kód: 36 10 =24 16 ) van egy általánosított valutaszimbólum ¤ , és minden karakterlánc-változó és függvény ezen keresztül íródik ki, például MID¤.

Teljesítmény

Amikor a programot a parancs elindítja , a program RUNegy köztes, úgynevezett szálas kódba fordítódik le. A szálas kód valójában szubrutin híváscímeinek és hívási adatainak sorozata. Ebben az esetben a fordító a program végrehajtása előtt az összes számot belső reprezentációra, az összes kifejezést pedig fordított zárójeles jelölésre fordítja . Amikor egy program lefut, a végrehajtó rendszer meghívja a megadott szubrutinokat, és átadja nekik az előkészített adatokat. Így a szálas kód gyorsabb a szokásos értelmezésnél (mert a program végrehajtása nem vesz igénybe időt a változók számainak és nevének "felismeréséhez", kifejezések átalakításához stb.), de lassabb, mint a kapott gépi kódban a program. a kimeneti valódi fordítónál.

Egy pillantás a nyelvre

Példa egy egyszerű programra:

10 CLS 20 NYOMTATÁS "Üdv mindenkinek!" 30 VÉGE

A program számozott sorokból áll, minden sor egy utasítást tartalmaz. A program szövegének szerkesztése parancssori módban történik. Csapatok:

Nyelvi operátorok:

BEEP HÍVÁS KÖR TÖRLÉS CLOSE CLS COLOR DATA DEF DEF FN DEF USR DIM DRAW END FOR GOSUB GOTO IF BEMENETI KULCS LET VONAL KERESÉSE LPRINT ON NYISSA KI KÖVETKEZŐ PAINT POKE PRESET PRINT PRINT PSET READ REM VISSZA KÉPERNYŐ VISSZAÁLLÍTÁSA STOP TROFF TRON

Lehetőség van az operátorokat három karakterre csökkenteni beíráskor (például: CIRCLE-re CIR), és néhányat, amelynek első két karaktere nem egyezik más operátorral, kettőre ( POKE - PO). A parancs PRINThelyettesíthető a jellel ?. Lehetőség van a lánckonstrukció IF - THEN - használatára is ELSE IF, miközben a rövidítéseket TH, ELés ELIF. A program egy sorának maximális hossza 254 karakter.

Funkciók:

SQR SIN COS TAN ATN PI EXP LOG ABS FIX INT SGN RND FRE CINT CSNG CDBL PEEK INP BIN¤ OCT¤ HEX¤ CHR¤ ASC LEN STRING¤ INKEY¤ STR¤ VAL MID¤ CSRLIN POS LPOS EOF PONT

A Basic Vilnius magában foglalja a szubrutinok gépi kódban történő hívását . Ehhez a konstrukciót használják DEF USR. A gépi kódot egy parancs töltheti be, BLOADvagy egy operátor generálhatja POKE.

Ennek a BASIC-nek a hiányosságai közé tartozik, hogy hiányzik számos parancs, például INSTRegy karakterlánc előfordulásának keresése a karakterláncban, DECa 16-os szám 10-esre fordítása, a programvégrehajtás során előforduló hibák kezelésére szolgáló eszközök, parancsok karakterenkénti bevitel egy fájlból.

Opciók

A Basic Vilnius a BK-0010/BK-0011 számára 24 KB ROM-ot foglal el. A memória megtakarítása érdekében a hibaszövegeket nem tároltuk a ROM-ban; a hibákat nem szövegben, hanem kódokban adják meg, például: "Error 2 on line 10".

A ROM-ban található Focal BK-0010-hez a Vilnius BASIC egyszerűsített változatát hozták létre, mindössze 9 KB méretű, magnóról betöltött RAM-ba (az első verzió - 1985-ben, a második - 1987-ben). Nem támogatta a különböző típusú számokat (csak az egyszeres pontosságú valós számokat), valamint a fő verzió néhány operátorát és funkcióját, de a BASIC funkciók alapkészletét megvalósították. A 87. évi változat ugyanakkor lehetővé tette több operátor használatát egy sorban, valamint az operátorok egy vagy több kezdőbetűre redukált írásmódját. Ezenkívül az egyszeres pontosságú valós aritmetika a valós számokkal végzett munka többszörösére gyorsult a ROM-ban lévő BK-0010-01 verzióhoz képest, ami a RAM-ban lévő verziót valóban rendkívül gyors BASIC megvalósítássá tette, ha ennek változóival dolgozunk. típus.

A Basic Vilnius for UKNC három verziója létezik - a ROM kazettában lévő verzió 24 KB-ot, a hálózaton (hálózaton) keresztül letölthető verzió - 28 KB, a lemezes verzió - 30 KB. A lemezes és hálózati megvalósítások különböznek a szöveges hibaüzenetek jelenlétében. A legújabb verziók 1988 szeptemberéig nyúlnak vissza.

A BASIC Vilnius adaptációja a Nemiga számítógéphez láthatóan később és már Fehéroroszországban készült. Magát a nyelvet egy operátor jelenléte különbözteti meg, PLAYamely lehetővé teszi hangok és dallamok lejátszását.

Érdekes tények

Irodalom

Jegyzetek

  1. M. Maksimov. A véletlen számok véletlenszerűek? - "Tudomány és Élet" folyóirat, 1986. 10. szám.
  2. https://www.youtube.com/watch?v=UJZpngjvCD8&list=PLiWLTRSJ9VmvBQHIEDEX6q8urb6Eqikwd&index=15 Archiválva : 2016. szeptember 21. a Wayback Machine UKSC-ben: Kiegészítés a 80-as évek PC Graphi tesztjéhez, nem-Game

Linkek