X-Git-Url: http://svarog.pmf.uns.ac.rs/gitweb/?p=mjc2wsl.git;a=blobdiff_plain;f=src%2Fmjc2wsl.java;h=86177134f1bd3cc9d6656c6afa286bd50c501b45;hp=521be052fffd8f23a56a4537793fc4a85227245d;hb=1df11af4aa88816abcb609d38793129e11ad983d;hpb=dd4a6268bba13afdda7ccd40d82a5955ef56eb7d diff --git a/src/mjc2wsl.java b/src/mjc2wsl.java index 521be05..8617713 100644 --- a/src/mjc2wsl.java +++ b/src/mjc2wsl.java @@ -273,9 +273,29 @@ public class mjc2wsl{ prl(cmdToEStack("tempres")); break; } + case sub: { + prl(getTopTwo()); + prl("tempres := tempb - tempa;"); + prl(cmdToEStack("tempres")); + break; + } + case mul: { + prl(getTopTwo()); + prl("tempres := tempb * tempa;"); + prl(cmdToEStack("tempres")); + break; + } case div: { prl(getTopTwo()); - prl("tempres := tempb / tempa;"); + prl("IF tempa = 0 THEN ERROR(\"division by zero\") FI;"); + prl("tempres := tempb DIV tempa;"); + prl(cmdToEStack("tempres")); + break; + } + case rem: { + prl(getTopTwo()); + prl("IF tempa = 0 THEN ERROR(\"division by zero\") FI;"); + prl("tempres := tempb MOD tempa;"); prl(cmdToEStack("tempres")); break; }