4월, 2022의 게시물 표시

비트연산 대해 배운것 + C# enum flags

1 2 3 4 5 6 7 8 9 10 11 12 13 14 [ System .Flags] public   enum  Attachable {       None  =   0 ,      Muzzle  =   1   < <   0 ,      Scope  =   1   < <   1 ,      HandGuard  =   1   < <   2 ,      Magazine  =   1   < <   3 ,      Stock  =   1   < <   4 ,  Everything = ~0,         HandGun  =   Muzzle  |  Scope  |  Magazine } Colored by Color Scripter cs 순서대로 int값이 0, 1, 2, 4 ,8, 16, 31, 11 이다  ray쓸때 필요한 지식 비트 연산자 이항 연산자 & = 'AND' 예) A와 B 모두가 true면 true | = 'OR' 예) A와 B 중 하나라도 true면 true. ^ = 'XOR' 예) A ^ B = A와 B가 서로 다른 값일 때 true 단항 연산자 ~ = 값을 뒤집는 연산자. ! = 0인 값을 1로, 0이 아닌 모든 값을 0으로 만들어준다. Shift 연산자 << = 비트값을 왼쪽으로 이동시킨다. >> = 비트값을 오른쪽으로 이동시킨다. 예)  1 << 2 = 4. 1의 비트값을 0001. 이것을 왼쪽으로 2번 이동하면 0100, 즉 4가 된다. 비워진 값은 0으로 변환한다. 8 >> 2 = 2. 8의 비트값은 1000. 오른쪽으로 2번 이동하면 0010, 즉 2가 된다. 비워진 값이 양수면 0, 음수면 1로 변환한다. 활용하는 방법 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17      void  Test()     {         Attachable temp  =