0001 0010 을 왼쪽 시프트5했을때
010/0 0010 이 되어야 함 (나머지 3이 오른쪽에 붙음)
그거슬 질문했더니
key = (key <<5 | key >> sizeof(key) -5 ); // 사실 앞에 key=이 붙어도 되는지도 의문
하라고알려줬는데ㄴ
그렇게하면
5만큼 왼쪽 shift는
0100 0000 이고
8-5 니까 3만큼 이동한다 치면
0000 1000 이랑 | 연산을 한다는건가??
0100 1000
내가 원하는값은
0100 0010 인데 ,,,??>???? 내가 잘못 이해를 한건가??
ㄴ난찐쫘 모르겟어 제발...시발..개가태
ASL 말하는건가
그건모르겠고
shift를 하고싶을뿐인데
shift로 넘어간 값들을 뒤에붙이고싶은것
ASL 검색해보고오셈 이걸 구현하고 싶다는거 아님?
이상한것만떠요센세 ;;
key << 5>> sizeof(key) - 5 : 0000 0010 0100 0000 0000 0010 --- 0100 0010
머여 sizeof적어서
짤렸네
암튼 | 왼쪽 결과랑 오른쪽 결과 각각 구해서 OR 시키는거임
왼쪽 시프트 오른쪽 시프트 따로 하는건데 왜 왼쪽 시프트 결과에 오른쪽 시프트 한다고 생각하는거야
그런건야..??모르겟어....ㅠㅠㅠ진짜모르겟다...................... |가 머하느건지도모르겟어
|는 bitwise or
두비트가 하나만 1이면 1 반환 or 랑 비슷하게 굴러가는데 <<5>>3하는결과 따로 or 연산 하는건가?? 0100 0000 0000 0010 0100 0010 ????
해당 댓글은 삭제되었습니다.
넌천재 야