Proměnná je jedinečné označení datového nebo vstup/výstupního(I/O) prvku.
Proměnné mohou být:
Globální | Jsou specifikovány jedinečným jménem v tabulce proměnných, kde ukazují na prvek datového nebo I/O modulu. | ||||||
Lokální | Jsou specifikovány jedinečným jménem v seznamu lokálních proměnných u každého
programového bloku. Tyto jsou platné jen v tomto programovém bloku a neukazují jinam.
Lokální proměnné se dělí takto:
|
Pro použití datových modulů si projděte informace o datových modulech.
Jsou specifikovány podle rozsahu a použití proměnné tak, abyste i bez znalosti vyšších programových jazyků měli k jejich využití blízko.
B1 (boolean) |
Binární informace jednoho bitu. Její hodnota může být "Off" (0), nebo "On" (1). |
B8 (byte) |
Osmibitová slabika bez znaménka. (0..255) |
I8 (Int8, shortint...) |
Osmibitová slabika se znaménkem. (-128..-127) |
Char | Slabika, jež reprezentuje kód znaku ASCII (0..255). |
B16 (word) |
Dvouslabičná proměnná bez znaménka (0..65.535). |
I16 (Int16, SmallInt) |
Dvouslabičná proměnná se znaménkem (-32.768..+32.767). |
B32 (Double word, DWord) |
Čtyřslabičná proměnná bez znaménka (0..4.294.967.295). |
I32 (Int32, Integer) |
Čtyřslabičná proměnná se znaménkem (-2.147.483.648 .. +2.147.483.647). |
B64 (QWord) |
8-slabičná proměnná bez znaménka (0 .. 18.446.744.073.709.551.616). |
I64 (Int64) |
8-slabičná proměnná se znaménkem (-9.223.372.036.854.775.808 .. +9.223.372.036.854.775.807). |
Comp | 8-slabičná proměnná se znaménkem.Narozdíl od Int64 je tato zpracovávána matematickým koprocesorem jako Float(-2^63+1..2^63 -1). |
F32 | 4-slabičný Float známý také jako "Single precission". |
F48 | 6-slabičný Float známý také jako "Float48". |
F64 | 8-slabičný Float známý také jako "Double precission". |
F80 | 10-slabičný Float známý také jako "Extended". |
Všechny typy proměnných mohou být také použity v datových polích (array). Použitelné indexy se zobrazují jako množina [n..m] kde n je použitelný v rozsahu (0..1022) a m v rozsahu (1..1023), n<m. V programu lze jako index použít proměnnou typu B8, B16 nebo B32, tedy bez znaménka. Nejrychleji probíhá zpracování s indexovou proměnnou B32, protože procesor je 32-bitový,
Hodnoty pole typu Char jsou přenášeny v deklarované délce. Je-li znaková sekvence ukončena hodnotou 0, přenáší se jen tato včetně znaku 0.
Tato tabulka je spojovacím článkem mezi programem a jednotlivými datovými a I/O moduly. Definujete-li v programu parametr logického symbolu, pak používáte tag z této tabulky (pokud ne z lokální). Jinými slovy, jedinečné jméno globální proměnné je právě tag z této tabulky. Již nikdy nebudete potřebovat specifikaci programového modulu ani ofset v jeho prostoru, protože tyto údaje jsou popsány právě zde. Proto je důležité, aby Tag (jméno proměnné) byl pro vás výstižný v celém prostoru Vašeho programu.
V tabulce proměnných jsou zadávány klávesnicí jen dva textové údaje a to Tag a Comment. Změnu hodnoty prvku tabulky vyvoláte buď Ctrl+levou klávesou myši s kurzorem na prvku nebo dvojklikem na prvku. Pro změnu tagu nepracuje dvojklik. U nové proměnné použijte prázdné cely tabulky a postupujte zleva (od Tagu) doprava (ke Comment). V případě určení typu nebo modulu můžete zopakovat údaj předchozí řádky ve sloupci použitím klávesy Alt+levá myši s kurzorem na určované položce (nikoliv na té předchozí).
Tag | Jedinečné jméno globální proměnné. Tímto jménem se budete na proměnnou odkazovat v celém prostoru Vašeho programu. Je dostupné ve všech programových blocích a je nezastupitelné jinou definicí. Délka tagu je do 32 slabik. |
Type | Typ proměnné dle typů proměnných. Měníte-li tento údaj u proměnné, která je použita v programovém bloku, lze jej změnit jen za cenu ztráty odkazů na tuto v logických symbolech programu a budete na toto nebezpečí upozorněni. Taktéž zneplatníte údaje o použitém modulu a alokaci. |
Len | Délka proměnné ve slabikách. Tato hodnota je pouze orientační a nelze ji měnit. |
Array | Specifikace pole proměnných. Podrobnosti zde. Narozdíl od typu rozměry pole můžete měnit ale zvažte změny v programu u již použitých proměnných. |
Module | Použitý datový modul, do kterého ukazuje proměnná. Můžete jej změnit i u proměnných v programu použitých. |
Allocate | Alokace v datovém modulu. Kromě I/O modulů je to adresa ofsetu paměti v modulu.
U I/O modulů je to specifikace vstupu/výstupu. Program Vám nabídne z daného
modulu položky, jež splňují datový typ (je prostor pro jejich délku) a jež nejsou
již obsazeny v definici jiné proměnné, čili jeden prvek modulu (alokace) může
být adresován jen jednou. Poznámka: Měníte-li již zadanou adresu, funkce vahledávání nejprve uvolní původně alokovanou, takže ji máte nabídnutou v seznamu. |
Comment | Jediný nepovinný údaj v definici proměnné, avšak profesionál ví, že pro něj povinný je. Délka 128 slabik komentáře může popsat proměnnou vyčerpávajícím, způsobem. |
Kliknutím levou klávesou myši na záhlaví sloupce setřídíte seznam podle tohoto sloupce. Seznam se třídí pouze pro zobrazení, faktické třídění položek nemá smysl. Třídění probíhá podle následujících pravidel.
Tag | Klasické třídění řetězce znaků, citlivé k rozdílu velkých a malých písmen. |
Type | Třídí podle indexu typu v pořadí dle typů proměnných. |
Len | Třídí podle délky obsazené paměti. |
Array | Třídí podle počtu prvků pole. |
Module | Třídí podle indexu, který ukazuje na datový modul. Prakticky v pořadí seznamu, jež je Vám nabídnut v rozvinovacím boxu. |
Allocate | Třídí podle skutečné adresy. V případě použitého I/O modulu podle indexu v tomto. |
Comment | Klasické třídění řetězce znaků, citlivé k rozdílu velkých a malých písmen. Nedává v případě komentářů příliš smysl ale třeba budete mít v komentářích systém |
Kontextovou nabídku získáte kliknutím pravou klávesou myši v tabulce. Pro některé funkce je nutné kliknout do řádky položky, protože se funkce vztahuje k položce.
Delete variable | Vymaže položku, do jejíž řádky jste klikli pro nabídku. Není-li položka použita, funkce ji jen vymaže. Pokud je položka proměnné použita v logických symbolech jako parametr, sdělí Vám tato funkce seznam symbolů, v nichž je alokována. Můžete pak její vymazání odložit nebo uskutečnit. |
Sorting case sensitive | Zvolí citlivost na velké/malé znaky abecedy pro třídění. |
Close table | Zavře tabulku proměnných |