Application d'un opérateur logique sur deux bytes - représentation binaire

0/5 (8 avis)

Vue 12 984 fois - Téléchargée 545 fois

Description

Visualisation binaire des deux bytes et du résultat obtenu en fonction de l'opérateur logique qui leur est appliqué.

Si l'on vous dit que :

51 or 46 := 63
51 xor 46 := 29
51 and 46 := 34
...

Bon. Pour la plupart d'entres nous, on répondra du bout des lèvres, contraints et forcés, qu'on veut bien l'admettre...
Mais le pourquoi du comment risque fort de nous échapper, si l'on ne peut vérifier ce qui se passe au niveau des bits qui forment un octet (ou byte).
Il faudrait donc avoir une représentation binaire de tout ça.

C'est ce qui m'avait poussé à faire ce petit soft initiatique.
Après un petit toilettage de l'interface, je vous en fais profiter, en espérant qu'il éclairera quelque esprit errant à la recherche de la vérité mathématique autant que Delphienne.

Pour bien comprendre, il faut savoir que (les deux termes pouvant être inversés) :

1 and 1 := 1, 1 and 0 := 0, 0 and 0 := 0
1 and not 1 := 0, 1 and not 0 := 1, 0 and not 0 := 0
1 or 1 := 1, 1 or 0 := 1, 0 or 0 := 0
1 xor 1 := 0, 1 xor 0 := 1, 0 xor 0 := 0

Quand aux opérateurs shl et shr, ils décalent le terme auquel ils sont appliqués de X bits vers la gauche ou vers la droite.

Tout ce que vous aviez toujours voulu savoir sur les bits sans jamais oser le demander vous attend. ;-)

Les commentaires sont d'époque, je ne les ai pas vérifiés à fond, j'espère qu'ils sont suffisamment complets.

Bonne prog' :p

Et, oserai-je l'ajouter ? Faut pas mollir !

Source / Exemple :


Tout est dans le zip !

Conclusion :


Fait sous Delphi 4, et compilable avec toute version de Delphi 32 bits, je présume.

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Inekman Messages postés 291 Date d'inscription dimanche 2 février 2003 Statut Membre Dernière intervention 30 juin 2006
1 juil. 2005 à 04:04
Génial ce code source Japee ! J'allais me lancer dans un tarabiscotage semblable pour apprendre comment cela fonctionne :P Y'a des fois je me demande si on est pas relié cérébralement, nous, petite communauté que nous somme sur DelphiFR ;-)

Y'en a un qui pense, un autre qui poste dans la seconde et encore un autre qui corrige le code immédiatement après. C'est fabuleux, j'adore cette ambiance.

Bravo pour ton code Japee et ta résistance, malgré la chaleur, tu molli pas :D

Inekman.9/10
cs_MAURICIO Messages postés 2106 Date d'inscription mardi 10 décembre 2002 Statut Modérateur Dernière intervention 15 décembre 2014 5
30 juin 2005 à 18:13
Merci Kenavo,
reste en ligne parce que dans quelques minutes tu vas pouvoir tester mon dernier compo (je vais mettre 2 sources) qui m' a pris justement, pas mal de temps (et la tête) le bougre!
A+
cs_Kenavo Messages postés 702 Date d'inscription vendredi 21 mars 2003 Statut Membre Dernière intervention 1 octobre 2009 5
30 juin 2005 à 18:08
Pis tiens, j'en profite aussi pour remercier Mauricio pour ses commentaires sur mes (nos) sources. C'est vrai que c'est agréable (plus que de se faire mettre 1 par un gougnafier anonyme sur un boulot de plusieurs semaines, ce, sans raison ni explication !).

Ken@vo
cs_Kenavo Messages postés 702 Date d'inscription vendredi 21 mars 2003 Statut Membre Dernière intervention 1 octobre 2009 5
30 juin 2005 à 17:23
Mon bon Japee,
Nous saurons que si la qualité de tes sources baisse brusquement, que ce sera du à un excès de cambouis sur le clavier. Celui là ... pas vu de bugs au premier survol. Jolie manipulation bit par bit, parce que les opérateurs logique en base 10 ...
10 ans, Delphiprog ! Delphi 1 a eu 10 ans ! Quel bond en avant ! Ceux qui développaient à cette époque sont moins nostalgiques de Turbo Pascal pour Windows !

Ken@vo (ni trop mou, ni trop raide !)
cs_Delphiprog Messages postés 4297 Date d'inscription samedi 19 janvier 2002 Statut Membre Dernière intervention 9 janvier 2013 32
29 juin 2005 à 23:36
Intéressant et bien fait, comme d'habitude.
Et puis c'est quand même plus facile à utiliser que la calculatrice Windows en mode scientifique.
Vu les types de données employés, ça devrait même être compilable avec Delphi 1 (pour les nostalgiques, lol).
Hé Japee, faut pas mollir cet été et continuer de nous fabriquer des applis vachement utiles à la compréhension des grands principes de la programmation.
En attendant, faut pas mollir sur le démarreur non plus, sinon va falloir ressortir la bonne vieille manivelle pour démarrer l'auto ! ;o]
Afficher les 8 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.