Difference between revisions of "Xor/fi"

From Lazarus wiki
Jump to navigationJump to search
m (Text replace - "delphi>" to "syntaxhighlight>")
Line 32: Line 32:
 
== Vaihda bitin arvo ==
 
== Vaihda bitin arvo ==
  
<delphi>
+
<syntaxhighlight>
 
function ToggleBit(const AValue,ABitNumber:integer):integer;
 
function ToggleBit(const AValue,ABitNumber:integer):integer;
 
begin
 
begin
 
   result := AValue xor 1 shl ABitNumber;
 
   result := AValue xor 1 shl ABitNumber;
 
end;
 
end;
</delphi>
+
</syntaxhighlight>
  
 
Jos  kutsut funktiota ToggleBit(11,0) niin funktio palauttaa arvon 10. Jos kutsu on ToggleBit(10,2) niin palautettava arvo on 14.
 
Jos  kutsut funktiota ToggleBit(11,0) niin funktio palauttaa arvon 10. Jos kutsu on ToggleBit(10,2) niin palautettava arvo on 14.

Revision as of 16:13, 24 March 2012

Deutsch (de) English (en) suomi (fi) français (fr) русский (ru)

Xor boolean lausekkeessa

Exclusive or (xor) eli eri- operaation tuloksena on true jos ainostaan toinen operandeista on true (tosi).


Totuustaulukko

A B   A xor B  
  false     false     false
  false   true   true
  true   false   true
  true   true   false


Xor bittikohtaisissa toiminnoissa

Bitettäin tehtävä xor asettaa kyseisen bitin ykköseksi (1) jos vastaavat bitit eivät ole samoja ja nollaksi (0) jos ne ovat samoja.

Vaihda bitin arvo

function ToggleBit(const AValue,ABitNumber:integer):integer;
begin
   result := AValue xor 1 shl ABitNumber;
end;

Jos kutsut funktiota ToggleBit(11,0) niin funktio palauttaa arvon 10. Jos kutsu on ToggleBit(10,2) niin palautettava arvo on 14.

Lisätietoja