vgk+parancsok

A virtuális gépi kód nyelvének utasításai.

Vezérlési utasítások
code 'goto $i'         a következő végrehajtandó utasítás a $i lesz 'gotou $cond $i'  ha $cond numerikus változó tartalma nulla (hamis), a következő végrehajtandó utasítás a $i lesz 'entry $i'        olyan nevet vezet be, mely használható a konkrét azonosító helyett 'nwsf'            új üres veremréteget épít fel ( a paraméterek mostantól ebbe kerülnek, de a változók csak a entsf-től kezdve ) 'entsf $i'        a jelenlegi pozíciót berakja a verembe és a következő végrehajtandó utasítás a $i lesz, átlép a következő verem-rétegre 'opar $i'         a jelenlegi alatti verembe másolja $i változót kimeneti paraméterként 'gopar $i'        $i := a következő kimeneti paraméter 'gtfp'            lebontja a veremréteget, a következő végrehajtandó utasítás a hívási verem tetejéről levett pozíciót követő lesz 'par $i'          a $i azonosítójú változót bejegyzi paraméterátadásra a következő veremrétegbe 'gpar $i'         $i := a következő bemeneti paraméter

code

Általános skalár utasítások
code 'reg $i $type'   $i azonosítójú változó bejegyzése (ha már létezik, akkor előbb kitörli) 'set $a $b'      $a := $b (ha $a nem létezik, akkor $b típusával létrejön, ha $b nem létezik, akkor skip) 'pnt $a $b'      $a access típusú változó mostantól $b-re mutat 'del $i'         $i azonosítójú változó törlése 'type $t $i'     $t := $i azonosítójú változó típusa 'regd $r $i'     $r := $i azonosítójú változó be van-e jegyezve 'setc $a $const' $a := $const  (pl: 'setc 36 0' -> állítsd a 36-os változót 0-ra code

Típusspecifikus skalár utasítások
Logikai: code 'not $a'         $a := ( ha $a=0 -> 1, különben 0 ) code Egész: code 'inc $a'         $a := $a + 1 'dec $a'         $a := $a - 1 'mod $a $b'      $a := $a mod $b 'eq $r $a $b'    $r := ( ha $a=$b -> 1, különben 0 ) code Tört: code 'chp $a'         $a := egészrész($a) code Egész és tört: code 'subs $a $b'     $a := $a - $b 'div $a $b'      $a := $a / $b 'gt $r $a $b'    $r := ( ha $a>$b -> 1, különben 0 ) 'abs $a'         $a := |$a| code Egész, tört és logikai code 'add $a $b'      $a := $a + $b (logikai vagy) 'mul $a $b'      $a := $a * $b (logikai és) code

Összetett adatszerkezetek utasításai
code 'new $a'         $a azonosítójú összetett adatszerkezet bejegyzése 'size $r $a'     $r := |$a| 'conc $a $t'     $a végére hozzáfűz egy $t típusú skalárt 'cind $p $t $i'  $p mutató mutasson $t[$i] elemre 'ctyp $t $i'     $t := $i azonosítójú változó típus code Az összetett adattípusok skaláris elemei ugyanúgy tárolódnak, mint a hagyományos skalárok. Az összetett adattípusok műveletei függvényként vannak megvalósítva és az alapkönyvtár részét képezik.