Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
26
Task/Bitwise-operations/Oberon-2/bitwise-operations.oberon
Normal file
26
Task/Bitwise-operations/Oberon-2/bitwise-operations.oberon
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
MODULE Bitwise;
|
||||
IMPORT
|
||||
SYSTEM,
|
||||
Out;
|
||||
|
||||
PROCEDURE Do(a,b: LONGINT);
|
||||
VAR
|
||||
x,y: SET;
|
||||
BEGIN
|
||||
x := SYSTEM.VAL(SET,a);y := SYSTEM.VAL(SET,b);
|
||||
Out.String("a and b :> ");Out.Int(SYSTEM.VAL(LONGINT,x * y),0);Out.Ln;
|
||||
Out.String("a or b :> ");Out.Int(SYSTEM.VAL(LONGINT,x + y),0);Out.Ln;
|
||||
Out.String("a xor b :> ");Out.Int(SYSTEM.VAL(LONGINT,x / y),0);Out.Ln;
|
||||
Out.String("a and ~b:> ");Out.Int(SYSTEM.VAL(LONGINT,x - y),0);Out.Ln;
|
||||
Out.String("~a :> ");Out.Int(SYSTEM.VAL(LONGINT,-x),0);Out.Ln;
|
||||
Out.String("a left shift b :> ");Out.Int(SYSTEM.VAL(LONGINT,SYSTEM.LSH(x,b)),0);Out.Ln;
|
||||
Out.String("a right shift b :> ");Out.Int(SYSTEM.VAL(LONGINT,SYSTEM.LSH(x,-b)),0);Out.Ln;
|
||||
Out.String("a left rotate b :> ");Out.Int(SYSTEM.VAL(LONGINT,SYSTEM.ROT(x,b)),0);Out.Ln;
|
||||
Out.String("a right rotate b :> ");Out.Int(SYSTEM.VAL(LONGINT,SYSTEM.ROT(x,-b)),0);Out.Ln;
|
||||
Out.String("a arithmetic left shift b :> ");Out.Int(SYSTEM.VAL(LONGINT,ASH(a,b)),0);Out.Ln;
|
||||
Out.String("a arithmetic right shift b :> ");Out.Int(SYSTEM.VAL(LONGINT,ASH(a,-b)),0);Out.Ln
|
||||
END Do;
|
||||
|
||||
BEGIN
|
||||
Do(10,2);
|
||||
END Bitwise.
|
||||
Loading…
Add table
Add a link
Reference in a new issue