Translation not up to date
The translation of this page does not represent the latest version. For the latest updates, see the English version of the documentation.
Last updated: 12. 1. 2023
Tato stránka obsahuje seznam dostupných operátorů jazyka CLEM.
Operace | Komentáře | Přednost (viz další sekce) |
---|---|---|
or |
Používá se mezi dvěma výrazy CLEM. Vrací hodnotu true, pokud je hodnota true, nebo pokud jsou obě hodnoty true. | 10 |
and |
Používá se mezi dvěma výrazy CLEM. Vrací hodnotu true, pokud jsou obě hodnoty true. | 9 |
= |
Používá se mezi libovolnými dvěma srovnatelnými položkami. Vrací logickou hodnotu true, pokud se hodnota ITEM1 rovná hodnotě ITEM2. | 7 |
== |
Stejné jako = . |
7 |
/= |
Používá se mezi libovolnými dvěma srovnatelnými položkami. Vrací hodnotu true, pokud ITEM1 se nerovná hodnotě ITEM2. | 7 |
/== |
Stejné jako /= . |
7 |
> |
Používá se mezi libovolnými dvěma srovnatelnými položkami. Vrací logickou hodnotu true, pokud je hodnota ITEM1 striktně větší než hodnota ITEM2. | 6 |
>= |
Používá se mezi libovolnými dvěma srovnatelnými položkami. Vrací logickou hodnotu true, pokud je hodnota ITEM1 větší nebo rovna hodnotě ITEM2. | 6 |
< |
Používá se mezi libovolnými dvěma srovnatelnými položkami. Vrací hodnotu true, pokud je hodnota ITEM1 striktně menší než hodnota ITEM2 . | 6 |
<= |
Používá se mezi libovolnými dvěma srovnatelnými položkami. Vrací logickou hodnotu true, pokud je hodnota ITEM1 menší nebo rovna hodnotě ITEM2. | 6 |
&&=_0 |
Používá se mezi dvěma celými. Ekvivalentní s logickým výrazem INT1 & & INT2 = 0. | 6 |
&&/=_0 |
Používá se mezi dvěma celými. Ekvivalentní s logickým výrazem INT1 & & INT2 /= 0. | 6 |
+ |
Sečte dvě čísla: NUM1 + NUM2. | 5 |
>< |
Zřetězí dva řetězce, například STRING1 >< STRING2 . |
5 |
- |
Odečte jedno číslo od jiného: NUM1 - NUM2. Lze jej také použít před číslem:-NUM. | 5 |
* |
Používá se k násobení dvou čísel: NUM1 * NUM2. | 4 |
&& |
Používá se mezi dvěma celými. Výsledkem je bité 'a' o celá čísla INT1 a INT2. | 4 |
&&~~ |
Používá se mezi dvěma celými. Výsledkem je bitové připojení 'and' z INT1 a bitový doplněk INT2. | 4 |
|| |
Používá se mezi dvěma celými. Výsledkem je bitový operátor 'inclusive or' z INT1 a INT2. | 4 |
~~ |
Používá se v přední části celého čísla. Vytvoří bitový doplněk INT. | 4 |
||/& |
Používá se mezi dvěma celými. Výsledkem je bitový operátor 'exclusive or' z INT1 a INT2. | 4 |
INT1 << N |
Používá se mezi dvěma celými. Produkuje bitový vzorek INT posunutý o N pozic. | 4 |
INT1 >> N |
Používá se mezi dvěma celými. Vytvoří bitový vzorek INT posunutý přímo o N pozic. | 4 |
/ |
Používá se k dělení jednoho čísla jiným číslem: NUM1 / NUM2. | 4 |
** |
Používá se mezi dvěma čísly: BASE ** POWER. Vrátí hodnotu BASE umocenou na hodnotu POWER. | 3 |
rem |
Používá se mezi dvěma celými čísly: INT1 rem INT2. Vrátí zbytek, INT1 -(INT1 div INT2) * INT2. | 2 |
div |
Používá se mezi dvěma celými čísly: INT1 div INT2. Provádí celočíselné dělení. | 2 |
Pořadí operátorů
Precedence určuje syntaktickou analýzu komplexních výrazů, zejména nezalomených výrazů s více než jedním operátorem infix. Například:
3 + 4 * 5
analyzuje jako 3 + (4 * 5)
spíše než (3 + 4) *
5
, protože relativní precedences určuje, že *
má být analyzováno před +
. Každý operátor v jazyku CLEM má k sobě přidruženou hodnotu priority; čím menší je tato hodnota, tím důležitější je na syntakticky analyzovaném seznamu, což znamená, že bude zpracována dříve než ostatní operátory s většími hodnotami priority.