테스트 사이트 - 개발 중인 베타 버전입니다

Bitwise Operators 아시는 분 계세요? 채택완료

홈짱 10년 전 조회 2,074

 

OperatorDescriptionExampleSame asResultDecimal
&ANDx = 5 & 10101 & 000100011
|ORx = 5 | 10101 | 000101015
~NOTx = ~ 5 ~0101101010
^XORx = 5 ^ 10101 ^ 000101004
<<Left shiftx = 5 << 10101 << 1101010
>>Right shiftx = 5 >> 10101 >> 100102

 

http://www.w3schools.com/images/lamp.jpg" alt="Note" style="box-sizing: border-box; border: 0px; vertical-align: middle; height: 32px; width: 32px;">The examples above uses 4 bits unsigned examples. But JavaScript uses 32-bit signed numbers.

Because of this, in JavaScript, ~ 5 will not return 10. It will return -6.

~00000000000000000000000000000101 will return 11111111111111111111111111111010

 

빨간애들이 어떻게 해서 생겨났는지 이해를 못 하겠습니다. ㅡㅡ;

댓글을 작성하려면 로그인이 필요합니다.

답변 1개

채택된 답변
+20 포인트
10년 전

False -> True , True -> False

즉 0 -> 1, 1 -> 0 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 3개

홈짱
10년 전
뭔 말씀인지 이해갈 잘...^^;;; 5가 0101이 되는 과정이 궁금합니다.
네이비칼라
10년 전
ㅋㅋㅋ 너무 설명이 간략했나요 ? ^^
NOT의 의미가 단어처럼 부정아닙니까?
즉, 참이면 거짓이 되고, 거짓의 NOT는 참이 된다는 겁니다.
이진법으로 보자면 1의 NOT는 0, 0의 NOT은 1

예를 들어 위 처럼
0101 의 NOT는 1010 되겠죠. 그러면 ~5 == 1*2의 3승 + 1*2의 1승 = 10이 되는거죠.
즉, ~5 == 10 이 되는 것입니다 ㅎㅎㅎ
---
5가 0101이 되는 것은 5를 이진법으로 표현하면 그렇게 됩니다.
이 부분은 여기서 설명드리기가 어렵네요.
직접 관련책이나 수학책을 찾아 보시면 금방 이해가 되실겁니다 ^^*
홈짱
10년 전
자세한 설명 고맙습니다. 100% 이해는 못 했지만, 대략 감은 오네요.

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인