X-Git-Url: http://svarog.pmf.uns.ac.rs/gitweb/?p=mjc2wsl.git;a=blobdiff_plain;f=src%2Fmjc2wsl.java;h=1682978fd688923fab5f6962073fe3dc93bc377f;hp=274bb7e448cd0d90f883ecab19e0093b868ac04a;hb=ff725c41ec41c38d0ff51c1f315dc472ac9747d1;hpb=9ed768a76bf830a6db379cdc7b91afd73a924361;ds=sidebyside diff --git a/src/mjc2wsl.java b/src/mjc2wsl.java index 274bb7e..1682978 100644 --- a/src/mjc2wsl.java +++ b/src/mjc2wsl.java @@ -437,8 +437,24 @@ public class mjc2wsl{ prl(cmdToEStack("-tempa")); break; } - //TODO shl, shr - + + case shl : { + prl(getTopTwo()); + prl("VAR :"); + prl("\tFOR i:=1 TO tempa STEP 1 DO tempres := tempres * 2 OD;"); + prl(cmdToEStack("tempres")); + prl("ENDVAR;"); + break; + } + case shr : { + prl(getTopTwo()); + prl("VAR :"); + prl("\tFOR i:=1 TO tempa STEP 1 DO tempres := tempres DIV 2 OD;"); + prl(cmdToEStack("tempres")); + prl("ENDVAR;"); + break; + } + case inc : { int b1 = get(), b2 = get(); prl(loc(b1)+" := " +loc(b1)+" + "+b2+";");