bit 연산 > IT 기술백서

shl: 왼쪽으로 Shift

shr: 오른쪽으로 Shift

and: 논리곱

or: 논리합

xor: Exclusive or

.inv(): 반전

.toString(2): 2진수로 출력

 

[code]

fun main() {

var bitData: Int = 0b10000

    

    // 1. 1

    // 2. 100

    // 3. 0b10000 or 100

    // = 0b10100

    bitData = bitData or (1 shl 2) 

    println(bitData.toString(2)) // 2진수로 출력

    

    // 1. 1

    // 2. 10000

    // 3. 0b10000 or 10000

    // = 0b10000

    var result = bitData and (1 shl 4)

    println(result.toString(2))

    

    // 1. 0b10000

    // 2. 0b00001

    println(result shr 4)

    

    // 1. 1

    // 2. 10100

    // 3. 01111

    // 4. 0b10100 and 01111

    // = 0b00100

    bitData = bitData and ((1 shl 4).inv())

    println(bitData.toString(2))

    

    println((bitData xor(0b10100)).toString(2))

}

[/code]

댓글 달기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

위로 스크롤