>>>"와 ">>"의 차이점은 다음과 같습니다. ">>"는 오른쪽 시프트를 의미합니다. 숫자가 양수이면 상위 비트가 0으로 채워집니다. 음수이면 상위 비트가 채워집니다. ">>>>"는 부호 없는 오른쪽 시프트를 의미합니다. 숫자가 양수이면 상위 비트가 0으로 채워지고, 숫자가 음수이면 오른쪽 시프트 후에도 상위 비트가 0으로 채워집니다."/> >>>"와 ">>"의 차이점은 다음과 같습니다. ">>"는 오른쪽 시프트를 의미합니다. 숫자가 양수이면 상위 비트가 0으로 채워집니다. 음수이면 상위 비트가 채워집니다. ">>>>"는 부호 없는 오른쪽 시프트를 의미합니다. 숫자가 양수이면 상위 비트가 0으로 채워지고, 숫자가 음수이면 오른쪽 시프트 후에도 상위 비트가 0으로 채워집니다.">

>Java >Java베이스 >자바에서 >>>와 >>의 차이점

자바에서 >>>와 >>의 차이점

王林
王林원래의
2019-11-18 10:44:323225검색

자바에서 >>>와 >>의 차이점

Java의 비트 연산자:

>>: 오른쪽 시프트를 의미합니다. 숫자가 양수이면 상위 비트가 0으로 채워집니다. 음수이면 상위 비트가 채워집니다. with 1

>>> : 논리 오른쪽 시프트라고도 하는 부호 없는 오른쪽 시프트를 나타냅니다. 즉, 숫자가 양수이면 상위 비트가 0으로 채워지고, 숫자가 음수이면 상위 비트가 채워집니다. 오른쪽 시프트 후에도 0으로 채워집니다.

표현식은 다음과 같습니다.

result = exp1 >> exp2;
result = exp2 >>> exp2;

는 숫자 exp1을 exp2 비트만큼 오른쪽으로 이동하는 것을 의미합니다.

예:

res = 20 >> 2;

20의 이진 시스템은 0001 0100입니다. 2비트 오른쪽으로 이동하면 0000 0101입니다. 결과는 res = 5입니다.

res = -20 >> 2;

-20의 이진 시스템은 그 보수입니다. 양수에 1을 더하면 1110 1011이 되고 2비트 오른쪽으로 이동하면 1111 1100이 되며 결과는 res = -6;

그리고 >>> 표기법은 다음과 같습니다.

res = 20 >>> 2;

결과는 같습니다. >>;

res = -20 >> 2;

-20의 바이너리는 1110 1011이고, 2비트 오른쪽으로 이동하며, 이때 상위 비트는 0, 즉 0011 1010으로 채워지며, 결과는 res = 58;

추가:

39fb77a9f0b9e3f29dc26226eb8b64e2>에 해당하는 왼쪽 시프트 연산자로, exp1이 exp2 비트만큼 왼쪽으로 이동하고 하위 비트에 0이 추가됨을 나타냅니다. 실제로 n 비트를 왼쪽으로 이동하는 것은 2^n을 곱하는 것과 같습니다.

왼쪽 시프트에는 <<< 연산자가 없습니다!

추천 튜토리얼: Java 튜토리얼

위 내용은 자바에서 >>>와 >>의 차이점의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.