Bitwise operations: Difference between revisions

Content added Content deleted
(Added Rust)
Line 683:
 
=={{header|Elena}}==
<lang elena>#define std'dictionary'*system.
#define stdextensions'basic'*io.
 
#symbol BitwiseTestbitwiseTest &former:anA= &later&:aB =x:y
[
'program'outputconsole << anA <<write:x write:" and " << aB <<write:y write:" = " << anAwriteLine:(x and:aB << "%n"y).
'program'outputconsole << anA <<write:x write:" or " << aB <<write:y write:" = " << anAwriteLine:(x or:aB << "%n"y).
'program'outputconsole << anA <<write:x write:" xor " << aB <<write:y write:" = " << anAwriteLine:(x xor:aB << "%n"y).
'program'output <<console write:"not " << anA <<write:x write:" = " <<writeLine:(x anA inverted << "%n"not).
'program'outputconsole << anA <<write:x write:" shr " << aB <<write:y write:" = " <<writeLine:(x anA __shift'addshift:aB << "%n"y).
'program'outputconsole << anA <<write:x write:" shl " << aB <<write:y write:" = " <<writeLine:(x anA __shift'subtractshift:aB(y << "%n"Negative)).
].
 
#symbol Programprogram =
[
#var a := 'program'input >>consoleEx readLine:(Integer new).
#var b := 'program'input >>consoleEx readLine:(Integer new).
BitwiseTest &&formerbitwiseTest:a &later:b.
].</lang>