16 가지 종류의 데이터를 추출 할 수있는 하드웨어에 대한 프로토콜 안내서가 있습니다. 모든 데이터를 표시하려면 65535를 마스크로 입력합니다.비트 마스크의 값 결정
2^0 (1)
+ 2^1 (2)
+ 2^2 (4)
...
+ 2^15 (32768)
==============
65535
내가 지금은 옵션 9, 10을 필요로 표시 할 필요가
, 및 13. 아마도 나는 단순히 다음과 같은 계산을 사용할 필요가 : 여기 오프베이스 해요 경우 (
2^9 (512)
+ 2^10 (1024)
+ 2^13 (8192)
==============
9728
을, 또는 이것을 할 수있는 프로그래밍 방식이 있습니다. 알고 싶습니다.)
내가 알고 싶은 것은 나중에 합계에 포함 된 모든 숫자를 추출하는 방법입니다.
나는 (9728 & 9) == 9
, (9728 & 10) == 10
및 (9728 & 13) == 13
으로 확인할 수 있다고 생각했지만 모두 false를 반환합니다.
9 대신 2^9를 사용하여 bitwise를 수행하고 2^9와 비교해야합니다. – juharr
'<<'를 사용해보세요. '2 ** 9 == 1 << 9, 2 ** 13 == 1 << 13' –