Opérateurs binaires - JavaScript

Bienvenu dans notre site web www.exam-lib.com, c'est un site éducatif qui contient une panoplie des exercices avec solutions pour tous les niveaux (primaire,secondaire, collège, lycée et même pour les étudiants de l'OFPPT au Maroc). vous pouvez naviguer sur notre site et choisir le niveau qui vous convient puis vous pouvez suivez l'exercices ou aussi le cours souhaité. si vous avez des questions vous pouvez toujours laisser un commentaire sur notre site et un de nos professeurs va se charger de répondre à toutes vos questions.
SUIVEZ NOTRE CHAINE YOUTUBE: قم بالتسجيل في قناتنا عبر هذا الرابط

https://www.youtube.com/channel/UCCITRMWPcElh-96wCS3EyUg

abdelouafi

Administrator
JavaScript Bitwise Operators
upload_2018-11-7_19-36-10.png


Exemple:
upload_2018-11-7_19-36-32.png



JavaScript utilise des opérandes de bits 32 bits
JavaScript stocke les nombres sous forme de nombres à virgule flottante de 64 bits, mais toutes les opérations au niveau du bit sont effectuées sur des nombres binaires de 32 bits.

Avant qu'une opération au niveau des bits soit effectuée, JavaScript convertit les nombres en entiers signés 32 bits.

Une fois l'opération au niveau du bit effectuée, le résultat est reconverti en nombres JavaScript 64 bits.


Les exemples ci-dessus utilisent des nombres binaires non signés de 4 bits. A cause de cela, ~ 5 retours 10.

Puisque JavaScript utilise des entiers signés sur 32 bits, il ne retournera pas 10. Il renverra -6.

00000000000000000000000000000101 (5)

11111111111111111111111111111010 (~ 5 = -6)

Un entier signé utilise le bit le plus à gauche comme signe moins.


Bitwise AND:
Lorsqu'un ET bit à bit est exécuté sur une paire de bits, il renvoie 1 si les deux bits sont à 1.

Exemple 1 bit:
upload_2018-11-7_19-39-28.png


Exemple pour 4 bits:
upload_2018-11-7_19-39-52.png


Bitwise OR
Lorsqu'un "OU" au niveau du bit est effectué sur une paire de bits, il retourne 1 si l'un des bits est 1:


Exemple 1 bit:
upload_2018-11-7_19-41-10.png

Exemple 4 bits:
upload_2018-11-7_19-41-26.png



Bitwise XOR
Lorsqu'un XOR au niveau du bit est exécuté sur une paire de bits, il renvoie 1 si les bits sont différents:

upload_2018-11-7_19-42-10.png


JavaScript Bitwise AND (&)

Le bitwise AND renvoie 1 seulement si les deux bits sont 1:

upload_2018-11-7_19-43-13.png


Exemple:
Code:
var x = 5 & 1;

Code:
<!DOCTYPE html>
<html>
<body>

<h2>JavaScript Bitwise AND</h2>

<p id="demo">My First Paragraph.</p>

<script>
document.getElementById("demo").innerHTML = 5 & 1;
</script>

</body>
</html>


JavaScript Bitwise OR (|)
Le Bitwise OR renvoie 1 si l'un des bits est 1:
upload_2018-11-7_19-45-3.png


Exemple:
Code:
var x = 5 | 1;

Code:
<!DOCTYPE html>
<html>
<body>

<h2>JavaScript Bitwise OR</h2>

<p id="demo"></p>

<script>
document.getElementById("demo").innerHTML = 5 | 1;
</script>

</body>
</html>


JavaScript Bitwise XOR (^)
Le bitwise XOR renvoie 1 si les bits sont différents:
upload_2018-11-7_19-46-9.png


Exemple:
Code:
var x = 5 ^ 1;

Code:
<!DOCTYPE html>
<html>
<body>

<h2>JavaScript Bitwise XOR</h2>

<p id="demo"></p>

<script>
document.getElementById("demo").innerHTML = 5 ^ 1;
</script>

</body>
</html>



JavaScript Bitwise NOT (~)
upload_2018-11-7_19-46-58.png


Exemple:
Code:
var x = ~5;

Code:
<!DOCTYPE html>
<html>
<body>

<h2>JavaScript Bitwise NOT</h2>

<p id="demo"></p>

<script>
document.getElementById("demo").innerHTML = ~ 5;
</script>

</body>
</html>



JavaScript (Remplissage à zéro) Décalage binaire gauche (<<)

Ceci est un décalage gauche à gauche. Un ou plusieurs bits nuls sont insérés à partir de la droite et les bits les plus à gauche tombent:

upload_2018-11-7_19-48-12.png


Exemple:
Code:
var x = 5 << 1;

Code:
<!DOCTYPE html>
<html>
<body>

<h2>JavaScript Bitwise Left</h2>

<p id="demo"></p>

<script>
document.getElementById("demo").innerHTML = 5 << 1;
</script>

</body>
</html>



JavaScript (Préservation de la signature) Décalage binaire vers la droite (>>)
C'est un signe qui préserve le virage à droite. Les copies du bit le plus à gauche sont insérées à partir de la gauche et les bits les plus à droite tombent:

upload_2018-11-7_19-49-16.png


Exemple:
Code:
var x = -5 >> 1;

Code:
<!DOCTYPE html>
<html>
<body>

<h2>JavaScript Sign Preserving Bitwise Right.</h2>

<p id="demo"></p>

<script>
document.getElementById("demo").innerHTML = -5 >> 1;
</script>

</body>
</html>

JavaScript (Remplissage à zéro) Décalage à droite (>>>)
Ceci est un décalage à droite zéro remplissage. Un ou plusieurs bits nuls sont insérés à gauche et les bits les plus à droite tombent:
upload_2018-11-7_19-50-21.png


Exemple:
Code:
var x = 5 >>> 1;

Code:
<!DOCTYPE html>
<html>
<body>

<h2>JavaScript Bitwise Right</h2>

<p id="demo"></p>

<script>
document.getElementById("demo").innerHTML = 5 >>> 1;
</script>

</body>
</html>




Nombres binaires
Les nombres binaires avec un seul jeu de bits sont faciles à comprendre:
upload_2018-11-7_19-51-20.png


Définir quelques bits supplémentaires révèle le modèle binaire:
upload_2018-11-7_19-51-53.png



Les nombres binaires JavaScript sont stockés au format complément à deux.

Cela signifie qu'un nombre négatif est le bit au bit PAS du nombre plus 1:
upload_2018-11-7_19-52-23.png


Conversion de décimal en binaire
Exemple
Code:
function dec2bin(dec){
    return (dec >>> 0).toString(2);
}

Code:
<!DOCTYPE html>
<html>
<body>

<h2>JavaScript Convert Decimal to Binary</h2>

<p id="demo"></p>

<script>
document.getElementById("demo").innerHTML = dec2bin(-5);
function dec2bin(dec){
    return (dec >>> 0).toString(2);
}
</script>

</body>
</html>


Conversion de binaire en décimal
Exemple
Code:
function bin2dec(bin){
    return parseInt(bin, 2).toString(10);
}

Code:
<!DOCTYPE html>
<html>
<body>

<h2>JavaScript Convert Binary to Decimal</h2>

<p id="demo"></p>

<script>
document.getElementById("demo").innerHTML = bin2dec(101);
function bin2dec(bin){
    return parseInt(bin, 2).toString(10);
}
</script>

</body>
</html>
 
Top