[Oberon] Project Oberon: New Edition

Alexey Veselovsky alexey.veselovsky at gmail.com
Sun Dec 22 16:10:54 CET 2013


And another question: what u-flag does for register instructions? (there is
no information about it in latest Compiler Conctruction and Project Oberon
book)

For example:

  PROCEDURE Put1a(op, a, b, im: LONGINT);
  BEGIN (*same as Pu1, but with range test  -10000H <= im < 10000H*)
    IF (im >= -10000H) & (im <= 0FFFFH) THEN Put1(op, a, b, im)
    ELSE Put1(Mov+U, RH, 0, im DIV 10000H);
      IF im MOD 10000H # 0 THEN Put1(Ior, RH, RH, im MOD 10000H) END ;
      Put0(op, a, b, RH)
    END
  END Put1a;

Put1(Mov+U, RH, 0, im DIV 10000H); -- why we set U-flag here?

Is U means something like shift?

Thanks, Alexey



On Sun, Dec 22, 2013 at 5:53 PM, Alexey Veselovsky <
alexey.veselovsky at gmail.com> wrote:

> Hi.
>
> Anybody knows what the difference between STW/LDW instructions from
> Compiler Construction (last revision) and STR/LDR from Project Oberon 2013?
>
> Thanks, Alexey.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: https://lists.inf.ethz.ch/pipermail/oberon/attachments/20131222/14bb0695/attachment.html 


More information about the Oberon mailing list