숫자·단위·비트
플래그 값 13에는 어떤 설정이 켜져 있나요?
사용할 도구
flags=13이라는 로그만으로 켜진 옵션을 알 수는 없습니다. 비트 플래그는 1·2·4·8 등에 배정한 옵션을 한 정수에 묶습니다. 8비트 부호 없음으로 고정해 읽기·검사·설정·해제를 순서대로 시험합니다. 기능 이름은 예시이며 실제 권한을 변경하지 않습니다.
13에는 세 비트가 켜져 있습니다
13 = 8 + 4 + 1
00001101
1 → option A
100 → option C
1000 → option D진수 변환에서 10진수 13은 1101, 8비트로 채우면 00001101입니다. 가중치 1·4·8이 켜져 있고 0부터 세면 bit 0·2·3입니다. 값 4인 플래그와 네 번째 비트를 혼동하지 말고 위치와 값을 구분하세요.
이진 변환만으로 각 비트의 기능은 알 수 없습니다. 다른 앱의 13은 다른 의미일 수 있습니다. 원래 명세에서 A=1·B=2·C=4·D=8 같은 매핑을 먼저 찾으세요. 비트 연산은 대조를 도울 뿐 의미나 안전성을 추측하지 않습니다.
AND로 관심 비트만 꺼내기
13 AND 4 = 4
13 AND 2 = 0
13 AND 6 = 4폭 8·부호 없음·10진 입력·AND를 선택합니다. 13과 4는 4여서 해당 비트가 있고, 두 번째 값을 2로 바꾸면 0입니다. AND는 true/false 문자열이 아니라 공통으로 켜진 비트를 남긴 정수입니다.
여러 플래그 검사에서 0이 아니라고 모두 켜진 것은 아닙니다. 6은 2와 4를 합친 마스크인데 13 AND 6은 4라 일부만 있습니다. 모두 필요한 검사는 마스크와 같아야 하고 하나라도 되는 검사는 0이 아니면 됩니다. 어떤 질문인지 먼저 정하세요.
OR는 켜는 연산이며 덧셈과 다릅니다
13 OR 2 = 15
15 OR 2 = 15
13 + 2 = 15
15 + 2 = 172를 켜면 13 OR 2는 15이고 다시 OR 2를 해도 15입니다. 덧셈은 처음만 같고 15+2는 자리올림으로 다른 비트가 바뀐 17입니다. 플래그 설정을 덧셈으로 대신하면 반복 실행에서 깨질 수 있습니다.
실제 설정을 바꾸기 전 원래 값·마스크·결과를 나란히 보세요. 이진 출력에서 1·4·8은 남고 2만 추가되어야 합니다. 화면은 계산만 하며 서버 설정이나 장치 권한을 바꾸지 않습니다.
XOR는 해제가 아니라 토글입니다
13 XOR 4 = 9
9 XOR 4 = 13
13 AND 251 = 9
9 AND 251 = 9
251 = 11111011 (8 bits)13 XOR 4는 9로 4를 지운 듯하지만 9 XOR 4는 다시 13입니다. XOR는 지정 비트를 뒤집으므로 없으면 켭니다. OFF로 맞추는 것과 현재 상태를 반전하는 것은 다릅니다.
8비트에서 4만 지우는 마스크는 11111011, 십진수 251입니다. 13 AND 251과 9 AND 251 모두 9라 반복해도 해제 상태입니다. 마스크는 폭에 의존하므로 다른 폭의 코드에 251만 복사하지 마세요.
결과에 폭과 부호 조건 함께 남기기
예시는 부호 없는 8비트입니다. NOT은 폭에 따라 달라지고 같은 패턴도 부호 있게 읽으면 음수로 표시될 수 있습니다. 값과 함께 폭·부호·입력 진법·연산·범위 초과 정책을 남겨 재현 가능하게 하세요.
마지막으로 15가 허용된 조합인지 따로 확인하세요. 표현 가능한 패턴에도 상호 배타적 설정이나 예약 비트가 있을 수 있습니다. 계산 성공은 앱이 받아들인다는 보장이 아닙니다. 유효한 조합과 적용 절차는 원래 명세로 판단하세요.