[JAVA] Introduction à l'arithmétique des bits

Introduction à l'arithmétique des bits

L'arithmétique des bits est la base d'un programme, mais pour être clair, cela peut être n'importe quoi sans le savoir. Cependant, en le connaissant, vous pouvez élargir les choix de programmes, et il existe certaines situations où il est pratique de l'utiliser réellement. De plus, l'arithmétique binaire peut être utilisée dans de nombreux langages informatiques, donc une fois que vous l'avez appris, vous pouvez l'utiliser dans divers environnements. Pour ceux qui ne sont pas familiers avec l'arithmétique des bits, cet article explique un exemple simple de ce qu'est l'arithmétique des bits.

Qu'est-ce que le fonctionnement des bits?

Tout d'abord, qu'est-ce qu'un peu?

Un ordinateur est un ensemble d'innombrables commutateurs ON / OFF. Ce commutateur est appelé un bit, et un commutateur est appelé un bit. Et ce commutateur fonctionne comme un ensemble de huit, et ces huit groupes sont appelés octets, et un ensemble de groupes correspond à un octet. Vous avez peut-être entendu dire qu'un programme est une collection de 0 et de 1, mais cela vient d'ici. Lorsque vous notez, écrivez comme 00000000 et comptez à partir du côté droit comme 0e bit, 1er bit, et ainsi de suite.

Qu'est-ce que le fonctionnement des bits?

L'arithmétique binaire contrôle la commutation ON / OFF d'innombrables commutateurs. C'est juste un mot ON / OFF, mais plusieurs commandes sont préparées pour diverses situations.

Et pour le contrôle ON / OFF, en gros, des multiples de 8 sont exécutés collectivement. Autrement dit, en octets. Il existe différents types tels que la variable 1 octet et la variable 2 octets dans chaque langue, mais tous les octets de cette variable sont émis collectivement.

opérateur

Les opérateurs sont des symboles de calcul utilisés lors du calcul de + et-. L'opération sur les bits est un symbole de calcul spécial qui n'est pas utilisé en mathématiques, et il y en a six. Fondamentalement, les résultats renvoyés sont vérifiés dans l'ordre du 1er bit et du 2ème bit, et le résultat est entré respectivement dans les 1er et 2ème bits.

&(AND) Compare deux commutateurs et renvoie 1 si les deux valent 1 et 0 si l'un ou l'autre est 0. Il est utilisé pour vérifier si l'indicateur est défini lorsque l'indicateur est géré par bits. Exemple: c = a & b a 11110000 b 10101010   ↓ c 10100000

|(OR) Compare deux commutateurs et renvoie 1 si l'un est 1 ou 0 si les deux sont 0. Il est utilisé pour définir le drapeau lorsque le drapeau est géré par bits. Exemple: c = a | b a 11110000 b 10101010   ↓ c 11111010

! (PAS) * Aussi dans le cas de ~

Inverse tous les états ON / OFF du commutateur, en changeant 0 en 1 et 1 en 0. Utilisez ceci lorsque vous souhaitez créer l'état opposé. Exemple: c =! A a 11110000   ↓ c 00001111

^(XOR) Compare deux commutateurs et renvoie 1 si un seul est 1, 0 si les deux sont 1 ou 0 si les deux sont 1. Il est utilisé lorsque vous souhaitez découvrir ce qui est différent. Exemple: c = a ^ b a 11110000 b 10101010   ↓ c 01011010

>> (décalage de bit à droite)

Décalez l'état ON / OFF de l'interrupteur de un vers la droite. 0 sera entré dans le cadre vacant en raison du décalage, et la partie qui dépasse le nombre fixe de chiffres disparaîtra. S'il dépasse et disparaît, il s'agit d'un débordement. Il est utilisé lors de la manipulation de bits à l'aide d'une boucle. Remarque: c = a >> 1 a 11110000   ↓ c 01111000

<< (Décalage du bit à gauche)

Décalez l'état ON / OFF de l'interrupteur de un vers la gauche. Sauf pour cette partie, c'est presque la même chose que le décalage de bit à droite. Remarque: c = a >> 1 a 11110000   ↓ c 11100000

Résumé

Ce qui précède est la base du fonctionnement des bits. En les combinant, il est possible d'effectuer des calculs spécifiques à l'ordinateur qui ne peuvent pas être effectués simplement par + - × ÷. Lorsque vous commencez à l'utiliser, vous vous souciez souvent du nombre d'octets de la variable, mais il vaut la peine d'utiliser le débordement intentionnellement. Le monde est passionné par les pièces de monnaie, mais de temps en temps, souvenez-vous de l'arithmétique!

Recommended Posts

Introduction à l'arithmétique des bits
Introduction à web3j
Introduction à Micronaut 1 ~ Introduction ~
[Java] Introduction à Java
Introduction à la migration
Introduction à Java
Introduction à Doma
Introduction aux fichiers JAR
Introduction à Ratpack (8) - Session
Introduction aux algorithmes avec java --Search (bit full search)
Mémo d'accélération du calcul des bits
Introduction à Ratpack (6) - Promesse
Introduction à Ratpack (9) --Thymeleaf
Introduction à PlayFramework 2.7 ① Présentation
Introduction à la mise en page Android
Introduction aux modèles de conception (introduction)
Introduction à la programmation pratique
Introduction à la commande javadoc
Introduction à la commande jar
Introduction à Ratpack (2) -Architecture
Introduction au style lambda
Introduction à la commande java
Introduction au développement de Keycloak
Introduction à la commande javac
Introduction aux modèles de conception (Builder)
Introduction au développement d'applications Android
Introduction à Ratpack (5) --Json & Registry
Introduction à la métabase ~ Construction de l'environnement ~
Introduction à Ratpack (7) --Guice & Spring
(Installation par points) Introduction à Java8_Impression
Introduction aux modèles de conception (composite)
Introduction à Micronaut 2 ~ Test unitaire ~
Introduction à JUnit (note d'étude)
Introduction à Spring Boot ① ~ DI ~
Introduction aux modèles de conception (poids mouche)
[Java] Introduction à l'expression lambda
Introduction à Spring Boot ② ~ AOP ~
Introduction à Apache Beam (2) ~ ParDo ~
Introduction à l'API EHRbase 2-REST
Introduction au prototype de modèles de conception
[Java] Introduction à l'API Stream
Introduction aux modèles de conception (Iterator)
Introduction à Spring Boot, partie 1
Introduction à Ratpack (1) - Qu'est-ce que Ratpack?
Introduction aux modèles de conception (stratégie)
[Introduction aux jeux Janken (comme)] Java
Introduction à Linux Container / Docker (Partie 1)
Opération pour connecter plusieurs Streams @Java
Introduction à la pratique rapide Chapitre 5
[Introduction à Java] À propos des expressions lambda
[Introduction à Java] À propos de l'API Stream