목록Computer Science (2)
JAMONGPROJECT
비트단위(bitwise) 연산자는, ~ (bitwise not) & (bitwise and) | (bitwise or) ^ (bitwise xor), > (bitwise right shift) 가 있다. ~ 연산자 예를 들어 1이 입력되었을 때 저장되는 1을 32비트 2진수로 표현하면 00000000 00000000 00000000 00000001 이고, ~1은 11111111 11111111 11111111 11111110 가 되는데 이는 -2를 의미한다. 예시 a = 1 print(~a) #-2가 출력된다. 컴퓨터에 저장되는 모든 데이터들은 2진수 형태로 바뀌어 저장된다. 0과 1로만 구성되는 비트단위들로 변환되어 저장되는데, 양의 정수는 2진수 형태로 바뀌어 저장되고, 음의 정수는 "2의 보수 표현..
정수 1개를 입력받아 2배 곱해 출력해보자. *2 를 계산한 값을 출력해도 되지만, 정수를 2배로 곱하거나 나누어 계산해 주는 비트 단위 시프트 연산자 를 이용할 수 있다. 컴퓨터 내부에는 2진수 형태로 값들이 저장되기 때문에, 2진수 형태로 저장되어 있는 값들을 왼쪽()으로 지정한 비트 수만큼 밀어주면 2배씩 늘어나거나 1/2로 줄어드는데, > n 이 될 때에는 왼쪽에 0(0 또는 양의 정수인 경우)이나 1(음의 정수인 경우)이 n개만큼 추가되고, 가장 오른쪽에 있는 1비트는 사라진다. ex) n = 10 print(n>1) 5 가 출력된다. (1010 => 101) print(n>2) 2 가 출력된다. (1010 => 10) n = 10 과 같이 키보드로 입력받지 않고 직접 작성해 넣은 코드에서, 숫..