#%% (1) 관계 연산자
isTrue = 10 == 11 # False
isTrue = 10 != 11 # True
print(isTrue)
#%% (2) 논리 연산자
isTrue = 10 == 11 and 10 > 1
# (10!=11) False and True(10은 1보다 크다) F and T -> False
isTrue = 10 == 11 or 10 > 1
# (10!=11) False or True(10은 1보다 크다) F or T -> True
print(isTrue)
'''day08.txt
비트 연산
1byte = 8bit
전구 8개가 모이면 1byte다.
비트 : 0 또는 1
10진수 : 0 ~ 9
2진수 : 0, 1
논리 연산자
& AND 두 비트가 모두 1이면 1
| OR 둘 중 하나라도 1이면 1
^ XOR 두 비트가 서로 다르면 1
(이진수)
10이라는 10진수 값을 2진수로 바꾸기
10 : 1010
11 : 1010 + 1 -> 1011
10&11 | 10|11 | 10^11 |
1010 & 1011 1010 '''console결과 10&11 10 ''' |
1010 | 1011 1011 '''console결과 10|11 11 ''' |
1010 ^ 1011 0001 '''console결과 10^11 1 ''' |
단항 연산자
~ NOT : 0을 1로 , 1을 0으로 바꿔준다.
#%% (3) 단항 연산자
isTrue = 10 ==11 #Flase
print(not isTrue)
#not False -> True
'''console결과
True
'''
10 : 1010 ~10 ->0101 -> 2²+2⁰ = 5 2의3210승 ~10 = 5 but, '''console결과 ~10 -11''' |
||
~a = -a-1 | ||
(증명식) | (~10 이 -11이 된 것을 증명) | |
0 0 0 1 -> 4bit(전구가 4개) 0or1 0or1 0or1 0or1 1bit 1bit 1bit 1bit 컴퓨터는 덧셈밖에 없다. ~1을 구하는 것 1 0001 1111 ->-1 -1 1111 + 2의3210승 ->2³+2²+2¹+2⁰=15 0 1 0000 부호비트 □1111 == -1 ==15 4bit이므로 1짤림 ㄴ1이면 음수 : -1 |
10이라는 양수가 ~10이라는 걸 만나서 부호비트가 0 ->1로 바뀜 1010 10 0110 + -10 1 0000 0 0110 == -10 0110 ==~1001 ~1001 ->~9 == -10 |
1011 11 0101 + -11 1 0000 0 0101 == -11 0101 ==~1010 ~1010 -> ~10 == -11 |
부호 비트
최상위 비트를 부호비트라고 하며,
양수는 0, 음수는 1로 표현한다.
쉬프트 연산자
'''
'코리아 IT아카데미 > python 인터넷 강의' 카테고리의 다른 글
ddazua | 9강 연산자3 - 비트연산의 활용 (0) | 2021.09.16 |
---|---|
아나콘다 스파이더 단축키 (0) | 2021.09.16 |
ddazua | 7강 연산자1 - 우선순위와 결합성 (0) | 2021.09.15 |
ddazua | 5강 format()과 형변환 (0) | 2021.09.13 |
ddazua | 3강 변수의 선언과 자료형 (0) | 2021.09.13 |