본문 바로가기
코틀린/etc.

[Kotlin][Bitwise Operator] shl, shr, ushr, and, or, xor, inv

by jinwo_o 2024. 9. 7.

이 값을 bitCount 비트 수만큼 왼쪽으로 이동합니다. bitCount 의 최하위 5개 비트만 이동 거리로 사용됩니다. 따라서 실제로 사용되는 변속 거리는 항상 0..31 범위에 있습니다.

print(1 shl 3) // 8

 

이 값을 bitCount 비트 수만큼 오른쪽으로 이동하여 가장 왼쪽 비트를 부호 비트의 복사본으로 채웁니다. bitCount 의 최하위 5개 비트만 이동 거리로 사용됩니다. 따라서 실제로 사용되는 변속 거리는 항상 0..31 범위에 있습니다.

print(9 shr 3) // 1

 

이 값을 bitCount 비트 수만큼 오른쪽으로 이동하여 가장 왼쪽 비트를 0으로 채웁니다. bitCount 의 최하위 5개 비트만 이동 거리로 사용됩니다. 따라서 실제로 사용되는 변속 거리는 항상 0..31 범위에 있습니다.

print(10 ushr 2) // 2

 

두 값 사이에 비트 단위 논리곱 연산을 수행합니다.

print(7 and 1) // 1

 

두 값 사이에 비트별 논리합 연산을 수행합니다.

print(6 or 3) // 7

 

두 값 사이에 비트별 베타적 논리합 연산을 수행합니다.

print(2 xor 5) // 7

 

이 값의 비트를 반전합니다.

print(12.inv()) // -13

 

shl - Kotlin Programming Language

 

kotlinlang.org

 

shr - Kotlin Programming Language

 

kotlinlang.org

 

ushr - Kotlin Programming Language

 

kotlinlang.org

 

and - Kotlin Programming Language

 

kotlinlang.org

 

or - Kotlin Programming Language

 

kotlinlang.org

 

xor - Kotlin Programming Language

 

kotlinlang.org

 

inv - Kotlin Programming Language

 

kotlinlang.org