diff --git "a/\353\271\204\355\212\270\354\227\260\354\202\260\354\236\220 \354\227\260\354\212\265.py" "b/\353\271\204\355\212\270\354\227\260\354\202\260\354\236\220 \354\227\260\354\212\265.py" new file mode 100644 index 0000000000000000000000000000000000000000..dc13f8e35f4ebb1e686b6fc21fda146a899e4c0f --- /dev/null +++ "b/\353\271\204\355\212\270\354\227\260\354\202\260\354\236\220 \354\227\260\354\212\265.py" @@ -0,0 +1,353 @@ +Python 3.7.1 (v3.7.1:260ec2c36a, Oct 20 2018, 14:05:16) [MSC v.1915 32 bit (Intel)] on win32 +Type "help", "copyright", "credits" or "license()" for more information. +>>> #비트 연산자 공부 +>>> +>>> +>>> a=0b110110 +>>> a +54 +>>> bin(a) +'0b110110' +>>> a>>1 +27 +>>> bin(54) +'0b110110' +>>> a>>1 +27 +>>> bin(a) +'0b110110' +>>> bin(a>>1) +'0b11011' +>>> a<<1 +108 +>>> a<<4 +864 +>>> bin(a<<4) +'0b1101100000' +>>> a>>5 +1 +>>> a>>2 +13 +>>> bin(13) +'0b1101' +>>> a>>5 +1 +>>> bin(a>>5) +'0b1' +>>> b=-1 +>>> bin(b) +'-0b1' +>>> 9^10 +3 +>>> a=60 +>>> b=13 +>>> bin(60) +'0b111100' +>>> bin(13) +'0b1101' +>>> a&b +12 +>>> a|b +61 +>>> a^b +49 +>>> a~b +SyntaxError: invalid syntax +>>> ~a +-61 +>>> ~b +-14 +>>> a<<2 +240 +>>> bin(a) +'0b111100' +>>> b<<2 +52 +>>> bin(a<<2) +'0b11110000' +>>> bin(b<<2) +'0b110100' +>>> ~a +-61 +>>> bin(a) +'0b111100' +>>> bin(~a) +'-0b111101' +>>> bin(9^10) +'0b11' +>>> bin(0b110110110111^0b1111) +'0b110110111000' +>>> bin(110110110111^0xf) +'0b1100110100011000100101111000110010000' +>>> bin(0b110110110111^0xf) +'0b110110111000' +>>> bin(0b110110110111^15) +'0b110110111000' +>>> bin(0b110110110111^0o17) +'0b110110111000' +>>> bin(0b110110110111^0b1111) +'0b110110111000' +>>> a=2340 +>>> bin(a) +'0b100100100100' +>>> ~a +-2341 +>>> bin(~a) +'-0b100100100101' +>>> a=120 +>>> bin(a) +'0b1111000' +>>> ~a +-121 +>>> bin(~a) +'-0b1111001' +>>> a=61 +>>> a=60 +>>> ~a +-61 +>>> bin(a) +'0b111100' +>>> bin(~a) +'-0b111101' +>>> a=6 +>>> ~a +-7 +>>> bin(a) +'0b110' +>>> bin(~a) +'-0b111' +>>> bin(7) +'0b111' +>>> bin(~7) +'-0b1000' +>>> 7 +7 +>>> ~7 +-8 +>>> bin(9) +'0b1001' +>>> bin(~9) +'-0b1010' +>>> ~9 +-10 +>>> bin(-9) +'-0b1001' +>>> ~( + ~9 + + ~9 + +SyntaxError: invalid syntax +>>> ~9 + +-10 +>>> ~1 + +-2 +>>> ~8 + +-9 +>>> ~0.1 + +Traceback (most recent call last): + File "<pyshell#79>", line 1, in <module> + ~0.1 +TypeError: bad operand type for unary ~: 'float' +>>> ~2 + +-3 +>>> ~2 + +-3 +>>> ~-2 + +1 +>>> ~-8 + +7 +>>> bin(~-8) + +'0b111' +>>> bin(-8) + +'-0b1000' +>>> 8 + +8 +>>> ~8 + +-9 +>>> bin(8) + +'0b1000' +>>> bin(~8) + +'-0b1001' +>>> 7 + +7 +>>> bin(7) + +'0b111' +>>> bin(~7) + +'-0b1000' +>>> + +>>> 1 + +1 +>>> ~1 + +-2 +>>> 7 + +7 +>>> ~7 + +-8 +>>> bin(7) + +'0b111' +>>> bin(~7) + +'-0b1000' +>>> bin(-2) + +'-0b10' +>>> bin(`61) + +SyntaxError: invalid syntax +>>> bin(-61) + +'-0b111101' +>>> bin(61) + +'0b111101' +>>> -0b1000 + +-8 +>>> a=0b01001100 + +>>> bin(a&-0b1000) + +'0b1001000' +>>> bin(~18) + +'-0b10011' +>>> bin(-18) + +'-0b10010' +>>> bin(~15) + +'-0b10000' +>>> a=15 + +>>> ~a + +-16 +>>> bin(~a) + +'-0b10000' +>>> bin(-1) + +'-0b1' +>>> a=15 + +>>> ~a + +-16 +>>> bin(-a) + +'-0b1111' +>>> a|-a + +-1 +>>> a|-0b1111 + +-1 +>>> bin(a&0b1011) + +'0b1011' +>>> a&0b1011 + +11 +>>> bin(a|~0b1111) + +'-0b1' +>>> bin(a&-0b10100) + +'0b1100' +>>> a=-16 + +>>> bin(a&0b-10100) + +SyntaxError: invalid token +>>> bin(a&-0b10100) + +'-0b100000' +>>> a&-0b10100 + +-32 +>>> bin(a) + +'-0b10000' +>>> bin(-1) + +'-0b1' +>>> bin(a^-1) + +'0b1111' +>>> bin(a&-1) + +'-0b10000' +>>> (a^-1)==(a*-1+-1) + +True +>>> 5*-1+-1 + +-6 +>>> (5*-1+-1) + +-6 +>>> a=-5 + +>>> (a*-1+-1) + +4 +>>> a=-16 + +>>> a^-1 + +15 +>>> a*-1+-1 + +15 +>>> a<<2 + +-64 +>>> bin(a) + +'-0b10000' +>>> a + +-16 +>>> a/4 + +-4.0 +>>> a>>2 + +-4 +>>> a>>2==a//4 + +True +>>> a<<2 + +-64 +>>> a>>2 + +-4 +>>> a/4 + +-4.0 +>>>