기술 블로그 (Tech Blog)/검색용 개발 블로그
bit and 연산자 (a&b>0)
devWonny
2021. 8. 27. 12:04
$scope.bitAnd = function(val1, val2) {
return (parseInt(val1 + "") & parseInt(val2 + "")) > 0;
}
a랑 b를 정수로 먼저 변환하고
그 정수들을 이진수로 해석했을 때
같은 자리에 있는 1이 하나라도 있으면
true를 반환하는거에요
4(10)은 100(2)고 6(10)은 110(2)이니까
4 & 6은 100(2) = 4(10)이 되고요
그래서 4 > 0이 돼서 true가 돼요
무식하게 해석해보면
4 & 6 > 0 이라고 하면
여기서 이진수로 해석하는게 어떻게 가능한건가요??
4 & 6 > 0 에서
&와 >0 이 있어야
이진수로 해석한다는 의미인건가? 싶어요
&자체가 이진수연산이에요
and는 &&이고요
조건에서의 and는 아닙니다