나는 가속도계의 값을 읽고 '값'이라는 버퍼에 저장하고 있습니다. 각 가속도계 판독 값은 10 비트 길이이지만 값은 바이트로 읽혀 지므로 가속도계 판독 값은 실제로 '값'버퍼의 2 바이트 또는 2 값입니다. 이것은 하나 개의 값 얻기 위해 두 바이트를 결합하는 방법에 대한 예제 코드입니다 :누군가이 코드 라인을 설명해 주시겠습니까?
x = ((int)values[1]<<8)|(int)values[0];
내가 값을 결합하고있어 것을 얻을 수를 [1] 값 [2] 나는 (int)를 확실 해요 부분은 정수로 해당 부분을 캐스팅하는 유형입니다 (비록 확실하지는 않지만). 나를 혼란스럽게하는 부분은 <<8
이고 수직 막대는 |
입니다. 이 두 부분은 무엇을하고 있습니까?
설명해 주셔서 감사 드리며 도움을 드릴 수 있습니다.
http://www.cprogramming.com/tutorial/bitwise_operators.html – SLaks