«bitwise-operators» 태그된 질문

비트 수준에서 조작을 수행하는 데 사용되는 연산자 프로그래밍 언어는 바이트 지향이고 하드웨어는 비트 지향이므로 프로그래밍에서 특히 프로그램이 하드웨어와 직접 상호 작용할 때 비트 수준에서 작동 할 수있는 것이 매우 중요 할 수 있습니다. .


13
!! ~ (틸드 / 뱅뱅 틸드가 아님)는 '포함 / 포함'배열 메서드 호출의 결과를 어떻게 변경합니까?
여기 jQuery inArray페이지 의 주석을 읽으면 흥미로운 선언이 있습니다. !!~jQuery.inArray(elm, arr) 이제 이중 느낌표가 결과를 boolean값이있는 type으로 변환 할 것이라고 믿습니다 true. 내가 이해하지 못하는 것은이 모든 것에서 물결표 ( ~) 연산자를 사용하는 것입니다. var arr = ["one", "two", "three"]; if (jQuery.inArray("one", arr) > -1) { alert("Found"); } if진술 리팩토링 …

1
우선 순위 및 비트 마스크 작업
나는 (겉보기에) 매우 이상한 사건을 만났습니다. 숫자 2 ( 0b10)를 가져 와서 1 ( 0b01)로 비트 마스킹합니다. 이것은 0b000에 해당하는 것을 생성해야합니다 . 그러나 Schrödinger가 등장하는 곳은 다음과 같습니다. var_dump(0b10 & 0b01); // int(0) var_dump(0b10 & 0b01 == 0); // int(0) var_dump(0b10 & 0b01 != 0); // int(0) 위스키. 탱고. …

9
C ++에서 부울에 비트 연산자 사용
C ++에서 "bool"값에 대해 비트 연산자 &, |, ^를 사용하지 않는 이유가 있습니까? 때때로 두 조건 중 정확히 하나가 참 (XOR)이되기를 원하는 상황이 발생하므로 ^ 연산자를 조건식에 넣습니다. 또한 때때로 결과가 참인지 아닌지 (단락이 아닌) 조건의 모든 부분을 평가하기를 원하므로 & 및 |를 사용합니다. 또한 때때로 부울 값을 누적해야하며 & …

6
Android에서 페인트 플래그 제거
내 코드는 다음과 같습니다. TextView task_text = (TextView) view.findViewById(R.id.task_text); task_text.setPaintFlags( task_text.getPaintFlags() | Paint.STRIKE_THRU_TEXT_FLAG); 이렇게하면 텍스트에 스트라이크 스루 효과가 나타납니다. 그러나 일단 설정된 플래그를 제거하는 방법과 플래그가 설정된 것을 감지하는 방법을 알고 싶습니다. 나는 이것이 비트 연산이라는 것을 이해하지만 ~ 및-연산자를 모두 시도했지만 둘 다 작동하지 않습니다.

2
단일 파이프 '|'를 사용하는 것 함수 인수에서 수행합니까?
예를 들어 다음 코드를 살펴보십시오. phpinfo(INFO_MODULES | INFO_ENVIRONMENT | INFO_VARIABLES); 단일 인수가 사용되고 있지만 단일 파이프 기호로 구분 된 옵션 목록을 제공합니다. 함수의 인수 값에 정확히 무슨 일이 일어나고 있습니까? 내 기능에서 동일한 것을 사용할 수 있습니까? 그렇다면 어떻게, 배열을 전달하는 것보다 이점이 있습니까?



7
큰 집합에서 해밍 거리가 낮은 이진 문자열을 효율적으로 찾습니다.
문제: 부호없는 32 비트 정수의 큰 (~ 1 억) 목록, 부호없는 32 비트 정수 입력 값 및 최대 Hamming Distance가 주어지면 입력 값 의 지정된 Hamming Distance 내에있는 모든 목록 멤버를 반환합니다. 목록을 보관할 실제 데이터 구조는 공개되어 있고 성능 요구 사항은 인 메모리 솔루션을 요구하며 데이터 구조를 구축하는 데 …

13
비트 연산의 실제 적용 [닫기]
현재이 질문은 Q & A 형식에 적합하지 않습니다. 사실, 참고 문헌 또는 전문 지식이 답변을 뒷받침 할 것으로 기대하지만이 질문은 토론, 논쟁, 여론 조사 또는 확장 된 토론을 유도 할 가능성이 높습니다. 이 질문이 개선되고 다시 열릴 수 있다고 생각 되면 도움말 센터 를 방문하여 안내를 받으세요. 휴일 팔년 전에 …

5
비트 단위 연산으로 예기치 않은 가변 크기
문맥 원래 PIC 마이크로 컨트롤러 용 8 비트 C 컴파일러를 사용하여 컴파일 된 C 코드를 포팅하고 있습니다. 부호없는 전역 변수 (예 : 오류 카운터)가 0으로 롤오버되는 것을 방지하기 위해 사용 된 일반적인 관용구는 다음과 같습니다. if(~counter) counter++; 여기서 비트 연산자는 모든 비트를 반전 시키며 명령문은 counter최대 값보다 작은 경우에만 참 …

5
부울과 비트 비교
uint16_t로 인코딩 된 플래그 세트가 있다고 가정 해보십시오 flags. 예를 들면 다음과 같습니다 AMAZING_FLAG = 0x02. 이제 기능이 있습니다. 이 기능을 사용하려면 플래그를 변경해야하는지 확인해야합니다. 변경하려면 플래시에 기록해야하기 때문입니다. 그리고 그것은 비싸다. 따라서 나는 flags & AMAZING_FLAG같은지 알려주는 검사를 원합니다.doSet . 이것이 첫 번째 아이디어입니다. setAmazingFlag(bool doSet) { if ((flags …
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.