OPERÁTORY MAKROJAZYKA

V makrojazyku je možné používat tyto základní operátory :

 &, +, -, *, /, ), (, /, /=, //, Div, Mod, LAnd, LOr, LXOr, XOr, And, Or.

Jejich význam je následující:

 (V závorce vpravo je uveden příklad použití.)
   &     - sumační operátor   ( M(5) & M(100)          )
   -----------------------------------------------------
   *     - součin             ( 5 * 2             (10) )
   /     - podíl              ( 5 / 2            (2.5) )
   div   - celočíselné dělení ( 8 div 2            (4) )
   mod   - zbytek po div      ( 9 div 2            (1) )
   land  - logický and        ( 255 land 8         (8) )
   lor   - logický or         ( 8 lor 2           (10) )
   lxor  - logický xor        ( 4 lxor 4           (0) )
   -----------------------------------------------------
   +     - součet             ( 5 + 6             (11) )
   -     - rozdíl             ( 5 - 6             (-1) )
   -----------------------------------------------------
   and   - booleovský and     ( 1 and 2 - 1        (1) )
   or    - booleovský or      ( 0 = 1 or 3 = 3     (1) )
 PRIORITA OPERÁTORU

 

Priorita je vlastnost operátoru. Podle priorit se při běhu makra rozhoduje o tom, která část výrazu má být dříve vyčíslena.

  ¸-----------------------------------------ç
  |   OPERÁTORY                  PRIORITA   |
  -------------------------------------------
  |  &                           nejvyšší   |
  -------------------------------------------
  |  *,/,div,mod,land,lor,lxor   druhá      |
  -------------------------------------------
  |  +,-                         třetí      |
  -------------------------------------------
  |  and,or                      čtvrtá     |
  -------------------------------------------
  |  =,//,/,/,/=,/=              nejnižší   |
  -------------------------------------------

Např.: 5 * 3 + 4 = (5 * 3) + 4 = 19

  < /P >

  Z tohoto příkladu by mělo být zřejmé, že sčítání má nižší prioritu
  než násobení. Upřednostnění násobení však může být závorkami
  potlačeno : 5 * (3 + 4) = 35
 Jak pracuje sumační operátor & ?
Příklad 1) dim Arr (20) : Byte [Integer [LongInt [Real]]] ---------- X := Arr[5] & Arr[10]; | 1| 2| 3| 4| 5| 6| 7| 8| 9|10|11|12|13|14|15|16|17|18|19|20| ---|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--- | | | | |€€|€€|€€|€€|€€|€€| | | | | | | | | | |





< PRE> Příklad 2) dim Arr (2, 20) : Byte [Integer [LongInt [Real]]] ---------- X := Arr[1,5] & Arr[2,5]; | 1| 2| 3| 4| 5| 6| 7| 8| 9|10|11|12|13|14|15|16|17|18|19|20| --|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--- 1| | | | |€€|€€|€€|€€|€€|€€|€€|€€|€€|€€|€€|€€|€€|€€|€€|€€| --|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--- 2|€€|€€|€€|€€|€€| | | | | | | | | | | | | | | |