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

Soyez le premier à donner votre avis sur cette source.

Vue 11 745 fois - Téléchargée 487 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

japee
Messages postés
1803
Date d'inscription
vendredi 27 décembre 2002
Statut
Modérateur
Dernière intervention
7 juillet 2019
-
Une coquille s'est glissée dans mon texte de présentation, la correction n'apparaît pas malgré deux mises à jour...

Il faut lire :

"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.
cs_MAURICIO
Messages postés
2233
Date d'inscription
mardi 10 décembre 2002
Statut
Modérateur
Dernière intervention
15 décembre 2014
5 -
C' est une très bonne initiative de ta part !!!
Juste un petit bug (sous delphi7 du moins) lorsque tu changes la valeur de l' un des SpinEdit directement: il provoque le Onchange 2 fois dont la 1ere qui provoque l' erreur ...

Et je suis d' accord pour dire qu' il ne faut molir. Beaucoup de sources sont visitées mais n' ont pas forcément le feedback des visiteurs: la honte pour eux!
Pensons à laisser une note lorsque la source ne nous a pa laissée indiférente sinon, on aura de moins en moins de sources par désintérêt de ceux qui les postent.
De ma part, je prépare un compo pas mal du tout. Je corrige les derniers bugs et je poste ça demain je pense ...
A+ et merci Japee
japee
Messages postés
1803
Date d'inscription
vendredi 27 décembre 2002
Statut
Modérateur
Dernière intervention
7 juillet 2019
-
Salut à toi, Mauricio

C'est curieux, je n'ai pas le bug dont tu parles, après compilation sous D4...
Je vais vérifier dès que j'ai un moment, là je suis en train de me battre avec un démarreur d'Espace, la galère...

Je comprends ce que tu dis au sujet de l'absence de commentaires ou de notes, bref de réaction, quoi.
Le pire, ça doit être de se dire que ça n'intéresse personne, alors à quoi bon...
Dans le cas de tes sources, je pense que ça vient du fait qu'elles sont d'un niveau plutôt élevé, et que ça peut en intimider plus d'un...
Et puis il y a aussi ceux qui se servent de la source, surtout s'il s'agit d'un compo, sans forcément en comprendre le sens ni la logique.
Après tout, c'est fait aussi pour ça. Mais ça n'empêche pas de laisser un petit mot.
Enfin...

Merci pour ton commentaire, et... faut pas mollir, man ! ;)

japee
cs_Delphiprog
Messages postés
4580
Date d'inscription
samedi 19 janvier 2002
Statut
Modérateur
Dernière intervention
9 janvier 2013
23 -
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]
cs_Kenavo
Messages postés
759
Date d'inscription
vendredi 21 mars 2003
Statut
Membre
Dernière intervention
1 octobre 2009
-
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 !)

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.