Difference between revisions of "Or/fr"

From Lazarus wiki
Jump to navigationJump to search
(Created page with "{{Or}} = Opération booléenne = Le '''ou'''booléen produit une valeur true si l'une au moins de ses opérandes est vraie. Il produit false uniquem...")
 
m (Fixed syntax highlighting; removed categories included in template)
 
Line 29: Line 29:
  
 
== Mettre un bit à 1 ==
 
== Mettre un bit à 1 ==
<syntaxhighlight>
+
 
 +
<syntaxhighlight lang=pascal>
 
function SetBit(const AValue, ABitNumber:integer):integer;
 
function SetBit(const AValue, ABitNumber:integer):integer;
 
begin
 
begin
Line 35: Line 36:
 
end;
 
end;
 
</syntaxhighlight>
 
</syntaxhighlight>
 +
 
Si vous appelez SetBit(%1000,1), vous obtenez alors  %1010 (%1000 = 8 et %1010 = 10). Si vous appelez SetBit(10,2), vous obtenez  14 (14 = %1110). Si vous appelez SetBit(10,1), vous obtenez 10.
 
Si vous appelez SetBit(%1000,1), vous obtenez alors  %1010 (%1000 = 8 et %1010 = 10). Si vous appelez SetBit(10,2), vous obtenez  14 (14 = %1110). Si vous appelez SetBit(10,1), vous obtenez 10.
  
 
== Voir aussi ==
 
== Voir aussi ==
 +
 
* [[And/fr|And]]
 
* [[And/fr|And]]
 
* [[Const/fr|Const]]
 
* [[Const/fr|Const]]
Line 44: Line 47:
 
* [[Shl/fr|Shl]]
 
* [[Shl/fr|Shl]]
 
* [[Shr/fr|Shr]]
 
* [[Shr/fr|Shr]]
<br>
 
<br>
 
[[category:Pascal/fr]]
 

Latest revision as of 05:35, 23 February 2020

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

Opération booléenne

Le oubooléen produit une valeur true si l'une au moins de ses opérandes est vraie. Il produit false uniquement si les deux opérandes sont fausses.

Table de vérité

A B A or B
  false     false     false
  false   true   true
  true   false   true
  true   true   true

Opération bit à bit

Le Or logique (aussi connu comme or bit à bit) demande des opérandes ordinales, met à 1 un bit de résultat si l'un des deux bits correspondants dans les opérandes vaut 1 et met à 0 si les deux bits sont à 0. Cela pour tous les bits des opérandes.

Mettre un bit à 1

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

Si vous appelez SetBit(%1000,1), vous obtenez alors %1010 (%1000 = 8 et %1010 = 10). Si vous appelez SetBit(10,2), vous obtenez 14 (14 = %1110). Si vous appelez SetBit(10,1), vous obtenez 10.

Voir aussi