算術
構文
exp = "IF" conjunct "THEN" exp "ELSE" exp;
sum = term (
'+ sum /
'- sum /
-empty);
term = factor (
'* term /
'/ term /
'(up arrow symbol) term /
.empty);
factor = '- factor / bitop;
bitop = compliment (
'/' bitop /
'/'\ bitop /
'& bitop / (
.empty);
compliment = "--" primary / primary;
(symbol for up arrow) はmodを意味し、/\ は排他的論理和を意味します。
単項マイナスが許容され、x*-y と書けるように構文解析されることに注意してください。
ビット演算子には標準的な慣習がないため、それらはすべて同じ優先順位を持ち、グループ化には括弧を使わなければなりません。
補数は1の補数です。
すべての算術演算とビット演算は、コードを実行しているマシンのモードと流儀で行われると仮定されます。ワード長や2の補数演算などを利用する者は、最終的に問題に直面するでしょう。