&=

설명

복합 비트 AND 연산자 &= 는 때때로 변수와 상수와 함께 쓰여 변수의 특정 비트를 LOW 상태(0으로) 만든다. 이것은 때때로 프로그래밍 가이드에서 "지우기 " 또는 "재설정" 비트로 참조된다.

비트 AND & 연산자 다시보기:

0 0 1 1 operand1 0 1 0 1 operand2 ---------- 0 0 0 1 (operand1 & operand2) - 결과 반환

문법

x &= y; // x = x & y; 와 같음

매개변수

  • x: 변수. 허용되는 자료 형: char, int, long
  • y: 변수 또는 상수. 허용되는 자료 형: char, int, long

예제 코드

0과 비트 AND 되는 비트는 0으로 되므로, myByte가 byte 변수면,

myByte & B00000000 = 0;

1과 비트 AND 되는 비트는 바뀌지 않으므로,

myByte & B11111111 = myByte;

※ 주의 및 경고:

우리는 비트 연산자 안에서 비트를 다루므로 - 이진 포매터를 상수와 함께 쓰는 게 편하다. 숫자는 다른 표현의 같은 값, 그들은 이해하기 쉽지 않다. 또, 명료성을 위해 B00000000 이 보여지지만, 0은 어떤 숫자 형태로든 0 이다.(흠... 거기 뭔가 철학적인?) 결과적으로 - 변수의 0과 1을 설정하기 위해, 변수의 나머지를 그대로 두려면, 복합 비트 AND 연산자 (&=)를 상수 B11111100과 함께 쓴다.

1 0 1 0 1 0 1 0 variable 1 1 1 1 1 1 0 0 mask ---------------------- 1 0 1 0 1 0 0 0 bits unchanged bits cleared

여기에 변수가 기호 x로 대체된 같은 표현이 있다.

x x x x x x x x variable 1 1 1 1 1 1 0 0 mask ---------------------- x x x x x x 0 0 bits unchanged bits cleared

그래서 :

myByte = B10101010; myByte &= B11111100; // results in B10101000

ARDUINO BUY RECOMMENDATION

Arduino UNO R3
Arduino Starter Kit
Please note: These are Amazon affiliate links. If you buy the components through these links, We will get a commission at no extra cost to you. We appreciate it.

※ OUR MESSAGES