Lausekkeet
Lausekkeet voivat olla reaalilukuja (esim. 3.4), heksadesimaalilukuja
alkaen $-merkkejä (esim. $00FFAA), merkkijonoja, jotka ovat heitto- tai
lainausmerkeissä (esim. 'hello' or “hello”) tai monimutkaisempia
lausekkeita. Lausekkeita varten on olemassa seuraavat binäärioperaattorit (suoritusjärjestyksessä):
- && || ^^: totuusarvojen yhdistäminen (&& = and (ja), || = or (tai),
^^ = xor (poissulkeva tai))
- < <= == != > >=: vertailut, palauttavat joko arvon tosi (1) tai epätosi (0)
- | & ^: bittitason operaattorit (| = bittitason or (tai), & = bittitason and (ja), ^
= bittitason xor (poissulkeva tai))
- << >>: bittitason operaattorit (<< = siirrä vasemmalle, >
> = siirrä oikealle)
- * / div mod: kerto- ja jakolasku, jakolaskun kokonaisosa ja jakojäännös
- + -: yhteen- ja vähennyslasku
Huomaa, että lausekkeen x div y arvo on lausekkeen x/y arvo pyöristettynä
nollan suuntaan lähimpään kokonaislukuun. Operaattori mod palauttaa jakojäännöksen
operaation osiensa jakolaskusta. Toisin sanoen, x mod y = x - (x div y) * y.
Lisäksi olemassa ovat seuraavat ei-binääriset operaattorit:
- !: not (ei), muuttaa toden epätodeksi ja päinvastoin
- -: muuttaa seuraavasta luvusta sen vastaluvun
- ~: muuttaa seuraavasta luvusta sen vastaluvun bittitasolla
Arvoina voit käyttää lukuja, muuttujia tai arvon palauttavia funktioita.
Alilausekkeita voidaan asettaa aaltosulkeiden väliin. Kaikki operaattorit
toimivat reaalilukujen kanssa. Vertailut toimivat myös merkkijonojen kanssa
ja + yhdistää merkkijonot. (Huomaa, että toisin kuin joissain ohjelmointikielissä,
molemmat totuusarvo-operaation argumentit lasketaan aina, vaikka toinen argumentti
määrittäisikin jo tuloksen.)
Esimerkki
Tässä esimerkissä on käytetty muutamia erilaisia sijoituksia.
{
x = 23;
color = $FFAA00;
str = 'hello world';
y += 5;
x *= y;
x = y << 2;
x = 23*((2+4) / sin(y));
str = 'hello' + " world";
b = (x < 5) && !(x==2 || x==4);
}