장비에서 생성 된 바이너리 로그 파일을 읽는 중입니다. 바이트 [] 안에 데이터가 있습니다. 나는 이런 식으로 뭔가를 할 수 짧은 만들기 위해 2 바이트를 읽을 필요가있는 경우 : short value = (short)(byte[1] << 8);
value += byte[2];
가 지금은 값이 유효한 데이터에 대한 정확한 알고 있습니다. 파일이 망가
누구나 다음 이유가 설명되지 않습니다 컴파일 할 수 있습니까? byte b = 255 << 1
오류 : Constant value '510' cannot be converted to a 'byte' 내가 바이너리에 다음을 기대하고있어이 : 1111 1110
유형 변환은 난처한 상황에 빠진 날있다.
endianness은 비트 연산과 관련이 있습니까? logical 또는 이동 중입니까? 저는 비트 연산자와 관련하여 숙제를하고 있으며, 머리와 꼬리를 만들 수 없으며, 엔디안에 대해 상당히 신경 쓰고 있다고 생각합니다. 즉, (대부분이 그렇듯이) 리틀 엔디 언 머신을 사용하고 있지만, 이것을 고려해야 할 필요가 있거나 낭비되는 사실입니까? 는 경우가 나는
나는 이것을 AS 3.0 코드에서 발견했다. (duration >> 0)
여기서 duration은 Number이다. 나는 bitwise right shift이하는 일을 알고 있다고 생각하지만, 0 비트를 이동시키는 것은 무엇인가? 이것은 코드에서 몇 번 발생하지만, 나는 그것이 무엇을하는지 이해하고 싶습니다.