Accueil Finances personnelles Bases de la manipulation de bits pour la programmation en C - mannequins

Bases de la manipulation de bits pour la programmation en C - mannequins

Table des matières:

Vidéo: Langage C #14 - structures et types 2025

Vidéo: Langage C #14 - structures et types 2025
Anonim

Une poignée d'opérateurs de programmation C fournissent des manipulations de données au niveau binaire. Les opérateurs sont faciles à ignorer, mais seulement lorsque leur véritable puissance et utilité ne sont pas appréciées.

Le ~ et! opérateurs

Deux opérateurs binaires peu fréquents sont le (ou le complément de 1) et le! (ou pas). Ils n'ont pas le charme des opérateurs logiques au niveau du bit, mais ils ont une place.

L'opérateur de complément de 1 retourne tous les bits dans une valeur, transformant un 1 en 0 et un 0 en 1. Par exemple:

~ 01010011 = 10101100

Le! L'opérateur (NOT) affecte la valeur entière - tous les bits. Il change n'importe quelle valeur non nulle à 0, et la valeur 0 à 1:

! 01010011 = 00000000! 00000000 = 00000001

Zéro et 1 sont les deux seuls résultats possibles lors de l'utilisation du bitwise! opérateur.

Les deux ~ et! les opérateurs sont des opérateurs unaires - vous préférez simplement une valeur pour obtenir les résultats.

Opérateur Nom Type Action
& ET Bit à bit Masque les bits, remet certains bits à 0 et laisse le reste

seul

| OR Bitwise Règle les bits en changeant les bits spécifiques de 0 à 1
^ XOR Bitwise Change les bits à 0 lorsqu'ils correspondent; sinon, à 1
~ 1 complément Unaire Inverse tous les bits
~ PAS Unaire Change les valeurs non nulles à 0; 0 valeurs, à 1
La fonction binbin ()

Deux instructions expliquent ce qui se passe dans la fonction binbin () pour convertir les valeurs en une chaîne binaire:

bin [x] = n & 0x80? 'dix'; n << = 1;

La première instruction exécute un masque AND avec la valeur n. Tout sauf le bit le plus à gauche dans le nombre est ignoré. Si ce bit est positionné, ce qui en fait une condition TRUE, le caractère 1 est stocké dans le tableau; sinon, le caractère 0 est stocké.

La valeur est exprimée en 0x80, qui est une notation hexadécimale, un type de raccourci pour binaire. La valeur hexadécimale 0x80 est égale à 10000000 binaire, qui est le masque AND. Si la valeur est 16 bits au lieu de 8, 0x8000 est utilisé à la place, ce qui crée un masque binaire 16 bits.

La deuxième instruction décale les bits de la valeur n d'un cran vers la gauche. Lorsque la boucle tourne, en passant par la valeur n, un autre bit de la valeur est décalé vers la position la plus à gauche. Ce bit est évalué et la chaîne binaire est construite en insérant un caractère '1' ou '0'.

Bases de la manipulation de bits pour la programmation en C - mannequins

Le choix des éditeurs

Pour les seniors: Comment travailler avec Windows dans Microsoft Windows - les nuls

Pour les seniors: Comment travailler avec Windows dans Microsoft Windows - les nuls

Windows, avec un W majuscule, tire son nom de sa caractéristique principale: Windows, avec un w minuscule. Se familiariser avec Windows signifie apprendre à ouvrir, fermer, redimensionner, déplacer et basculer entre les fenêtres, ce qui est la clé pour jongler avec succès avec plusieurs activités. Chaque programme que vous exécutez occupe sa propre fenêtre. Une fenêtre peut occuper une partie de ...

Comment accepter ou rejeter les cookies dans Safari - dummies

Comment accepter ou rejeter les cookies dans Safari - dummies

Un cookie est un petit fichier qu'un site Web enregistre automatiquement sur le disque dur de votre Mac. Il contient des informations, telles que vos préférences ou votre date de naissance, que le site utilisera lors de vos prochaines visites. Dans Mac OS X Snow Leopard, Safari vous permet de choisir d'accepter ou non tous les cookies ...

Le choix des éditeurs

Construire des boîtes et des lignes Bézier dans QuarkXPress - des nuls

Construire des boîtes et des lignes Bézier dans QuarkXPress - des nuls

Pour créer une boîte ou une ligne dans QuarkXPress plus complexe qu'un simple rectangle, ovale ou starburst, vous entrez dans le domaine du chemin de Bézier. Si vous avez utilisé l'outil Plume dans Adobe Illustrator ou Photoshop, vous comprenez déjà les chemins de Bézier. Il faut un peu de pratique et un esprit détendu ...

Création d'un rapport avec Crystal Reports 10 - témoins

Création d'un rapport avec Crystal Reports 10 - témoins

Lorsque vous démarrez Crystal Reports 10, généralement l'une des trois choses suivantes: créer un rapport, modifier un rapport ou exécuter un rapport sur les données de votre base de données. Les rapports prennent des données à partir d'une base de données, les traitent, les formatent et les affichent ensuite sur une imprimante, un écran d'ordinateur ou un site Web. Crystal Reports ...

Traitant des commentaires Javadoc dans Eclipse - mannequins

Traitant des commentaires Javadoc dans Eclipse - mannequins

Lorsque vous utilisez Eclipse pour écrire du code Java, n'oubliez pas de éditez les commentaires de Javadoc (les choses qui commencent par / **). Vous pouvez ajouter des informations utiles lorsque vous modifiez les commentaires Javadoc et lorsque vous les modifiez, l'aide au code d'Eclipse propose des suggestions. N'oubliez pas ces astuces lorsque vous modifiez vos commentaires Javadoc: Ajouter un commentaire Javadoc: ...

Le choix des éditeurs

Les connexions cachées sur le Nikon D5600 - les nuls

Les connexions cachées sur le Nikon D5600 - les nuls

Ouvrent les couvercles sur les côtés gauche et droit du Nikon D5600 caméra, et vous verrez plusieurs ports de connexions cachées. Les ports de connexion suivants sont indiqués sur cette image: Terminal d'accessoires: ce terminal accepte les accessoires suivants: câble déclencheur à distance Nikon MC-DC2; Télécommandes sans fil WR-1 et WR-R10; et les unités GPS GP-1 / GP-1A. I ...

Les connexions cachées sur votre Nikon D5200 - les nuls

Les connexions cachées sur votre Nikon D5200 - les nuls

ÉParpillés sur l'extérieur de votre appareil photo sont nombreuses commandes que vous utilisez pour changer d'image -prend des paramètres, revoir et modifier vos photos, et effectuer diverses autres opérations. Caché sous le couvercle sur le côté gauche de la caméra, vous trouverez les quatre ports de connexion suivants, étiquetés dans cette figure: Borne accessoire: Vous pouvez brancher le Nikon en option ...

Des boutons et autres commandes du Nikon D7500 - mannequins

Des boutons et autres commandes du Nikon D7500 - mannequins

C'est génial d'avoir une carte pour le boutons et commandes sur votre appareil photo, mais ce n'est pas beaucoup d'aide si vous ne pouvez pas vous rappeler quel bouton appuyer sur quand (et pourquoi). Alors, voici un aperçu des fonctions des contrôles les plus importants. (Certains contrôles ont des fonctions supplémentaires pendant certaines opérations, mais la table ...