Articles

Qu’est-ce que le booléen ?

Ma mère pose la question suivante, alors j’écris un article de blog en réponse.

Je regarde une bio de George Boole sur Prime mais je ne comprends toujours pas.

J’ai commencé à regarder les premières minutes du « Génie de George Boole » sur Amazon Prime, et c’était des ordures. C’est le contenu typique qui a été tellement abasourdi que tout contenu utile a été supprimé. C’est le genre typique de biographie adorant les héros qui attribue au sujet tout ce qu’il peut plausible.

Boole était un mathématicien qui a essayé d’appliquer les concepts mathématiques aux énoncés de « vrai” et de faux”, plutôt que des nombres comme 1, 2, 3, 4, He Il a également fait beaucoup d’autres travaux mathématiques, mais c’est ce travail qui continue de porter son nom (« logique booléenne” ou « algèbre booléenne”).

Mais ce que nous connaissons aujourd’hui comme « algèbre booléenne” a vraiment été développé par d’autres. Ils l’ont nommé d’après lui, mais vraiment toutes les choses importantes ont été développées plus tard. De plus, le « 1” et le « 0” des ordinateurs binaires ne sont pas exactement la même chose que le « vrai” et le « faux » de l’algèbre booléenne, bien qu’il y ait un chevauchement considérable.

Les ordinateurs sont construits à partir de choses appelées « transistors” qui agissent comme de minuscules interrupteurs, capables de s’allumer ou de s’éteindre. Ainsi, nous avons le même système à deux valeurs que « vrai » et « faux », ou ”1″ et ”0″.

Les ordinateurs représentent n’importe quel nombre en utilisant la « base deux” au lieu de la « base dix” à laquelle nous sommes habitués. La « base » de la représentation numérique est le nombre de chiffres. Le nombre de chiffres que nous utilisons est purement arbitraire. Les Babyloniens avaient un système de base 60, les ordinateurs une base 2, mais le calcul que nous utilisons pour les humains est la base 10, probablement parce que nous avons 10 doigts.

Nous utilisons un système ”positionnel ». Lorsque nous manquons de chiffres, nous mettons un « 1 » sur le côté gauche et recommençons. Ainsi, « 10 » est toujours le nombre de chiffres. Si c’est la base 8, une fois que vous êtes à court des huit premiers chiffres 01234567, vous vous enroulez et recommencez avec « 10”, qui est la valeur de huit en base 8.

Cela contraste avec quelque chose comme les chiffres romains non positionnels, qui avaient des symboles pour dix (X), cent (C) et mille (M).

Un nombre binaire est une chaîne de 1 et 0 en base deux. Le nombre cinquante-trois, en binaire, est 110101.

Les ordinateurs peuvent effectuer des calculs arithmétiques normaux sur ces nombres, comme l’addition (+), la soustraction (−), la multiplication (×) et la division (÷).

Mais il y a aussi des opérations arithmétiques binaires que nous pouvons faire sur eux, comme not(), or(∨), xor(⊕) et (∧), shift-left(« )et shift-right(« ). C’est ce à quoi nous nous référons lorsque nous disons arithmétique « booléenne”.

Jetons un coup d’œil à l’opération de fin. L’opérateur et signifie que si les deux nombres gauche  » et” droit sont 1, alors le résultat est 1, mais 0 sinon. En d’autres termes :

0 ∧ 0 = 0
00 1 = 0
1 0 0= 0
1 ∧ 1 = 1

Il existe des « tables de vérité” similaires pour les autres opérateurs.

Alors que la forme la plus simple de ces opérateurs est sur des bits individuels, ils sont plus souvent appliqués à des nombres plus grands contenant de nombreux bits, beaucoup basent deux chiffres binaires. Par exemple, nous pourrions avoir deux nombres de 8 bits et appliquer l’opérateur et :

01011100

11001101
=
01001100

Le résultat est obtenu en appliquant et à chaque ensemble de bits correspondants dans les deux nombres. Les deux nombres ont un « 1 » comme deuxième bit à partir de la gauche, de sorte que le résultat final a un « 1 » dans cette position.

Les calculs arithmétiques normaux sont construits à partir du binaire. Vous pouvez montrer comment une séquence d’opérations and et or peut se combiner pour ajouter deux nombres. La puce informatique entière est construite à partir de séquences de ces opérations binaires — des milliards et des milliards d’entre elles.

Conclusion
Les ordinateurs modernes sont basés sur la logique binaire. Ceci est souvent nommé d’après George Boole, « logique booléenne”, qui a fait un travail dans ce domaine, mais il est stupide de lui donner plus de crédit qu’il ne le mérite. Le documentaire Netflix ci-dessus est un fourrage typique du marché de masse qui donne à leur sujet un crédit vraiment incroyable pour tout ce qu’ils pourraient lui lier de manière plausible.

Articles récents de l’auteur

***Ceci est un blog syndiqué du réseau de blogueurs de sécurité d’Errata Security écrit par Robert Graham. Lisez le message original à: https://blog.erratasec.com/2020/05/what-is-boolean.html