| r138 vs r139 | ||
|---|---|---|
| ... | ... | |
| 22 | 22 | |
| 23 | 23 | == | 기호 테스트 == |
| 24 | 24 | === 논리 연산 === |
| 25 | 두 식을 두고 | 기호 테스트를 해보았을 | |
| 25 | 두 식을 두고 | 기호 테스트를 해보았을 때, {{{#!if (1==1)|(0==0) | |
| 26 | 26 | 두 식이 모두 참일 때는 당연히 출력되며 }}}{{{#!if (1==1)|(1==0) |
| 27 | 27 | 마주 보는 두 식중 오른쪽이 거짓이 되었든 }}}{{{#!if (1==2)|(2==2) |
| 28 | 28 | 왼쪽이 거짓이 되었든 하나가 거짓이라 하더라도 나머지 하나가 참이라면 출력이 된다.}}} 양쪽의 식 모두가 거짓(false)이라면 출력되지 않는다. {{{#!if (1==2)|(1==0) |
| ... | ... | |
| 31 | 31 | 앞의 true와 false가 진짜 true, false로 동작되는지 확인해보는 겸 테스트를 해보자면 {{{#!if true | true |
| 32 | 32 | true | true 로 적었을 때 출력이 된다. }}}{{{#!if true | false |
| 33 | 33 | true | false 로 조건을 적든}}}{{{#!if false | true |
| 34 | false | true로 조건을 적든 출력이 되므로 true와 false는 true와 false가 맞다.}}} false | false 로 if를 걸었을 | |
| 34 | false | true로 조건을 적든 출력이 되므로 true와 false는 true와 false가 맞다.}}} false | false 로 if를 걸었을 때 출력할 문구가 나오지 않는 상황을 보면 true가 true이고 false는 false임이 확실하다. {{{#!if false | false | |
| 35 | 35 | 출력 (| 기호)}}} |
| 36 | 36 | |
| 37 | 37 | 그러므로 | 기호는 논리연산 OR에 해당된다. |
| ... | ... | |
| 40 | 40 | 마찬가지로 동작된다.}}} 그러나 |기호를 3개를 적어 식으로 걸어보면 동작되지 않는다.{{{#!if true ||| true |
| 41 | 41 | 출력 (| 기호)}}} |
| 42 | 42 | === 비트 연산 === |
| 43 | | 기호가 2진수 비트합으로도 처리되는 | |
| 44 | || || case1 || case2 || case3 || case4 || | |
| 43 | | 기호가 2진수 비트합으로도 처리되는 상황을 설명하자면 true와 false 진리값이 각각 1, 0인 논리를 시스템상을 먼저 볼 필요가 있다. | |
| 44 | ||<table bgcolor=transparent,transparent> || case1 || case2 || case3 || case4 || | |
| 45 | 45 | || A || 1 || 1 || 0 || 0 || |
| 46 | 46 | || B || 1 || 0 || 1 || 0 || |
| 47 | || A|B || 1 || 1 || 1 || 0 || | |
| 48 | 표와 같이 처리되 | |
| 47 | || A {{{#orange \|}}} B || 1 || 1 || 1 || 0 || | |
| 48 | OR은 위 표와 같이 처리되는데 1을 true, 0을 false 놓고 보면 | 연산 결과가 같다. | |
| 49 | 49 | |
| 50 | ||
| 51 | ||
| 52 | || 10진수 || 2^^^2^^^ || 2^^^1^^^ || 2^^^0^^^ || | |
| 50 | {{{#!if (5|3) ==7 | |
| 51 | 이를 이진법에 적용하게 되자면 2진법의 각 자릿수별로 | 연산을 한 값을 보게 된다. | |
| 52 | 이를테면 5 | 3을 보자면 이진법으로 변환한 값의 각 자릿수에 따라 연산이 되어 7이 나온다. {{{#!wiki style="display: inline; font-family: monospace;" | |
| 53 | (5|3)=7 }}} | |
| 54 | ||<table bgcolor=transparent,transparent> 10진수 || 2^^^2^^^ || 2^^^1^^^ || 2^^^0^^^ || | |
| 53 | 55 | || 5 = || 1 || 0 || 1 || |
| 54 | 56 | || 3 = || 0 || 1 || 1 || |
| 55 | || (5|3) = 7 || 1 || 1 || 1 || | |
| 56 | ||
| 57 | (5|3)= | |
| 58 | {{{#!if (5|3) == | |
| 57 | || (5|3) = 7 || 1 || 1 || 1 ||}}} | |
| 58 | 만약 (5|3)==6 으로 테스트하게 되면 일(2^^0^^)의 자릿수가 틀려 출력되지 않게 된다.{{{#!if (5|3) ==6 | |
| 59 | 59 | 출력}}} |
| 60 | ||
| 61 | ||
| 62 | {{{#!if ( | |
| 63 | ||
| 64 | ||
| 65 | ||
| 66 | ||
| 60 | ||
| 61 | {{{#!if (9|5) ==13 | |
| 62 | 다른 예로 (9|5)==13을 걸게 되면 역시 동작된다. | |
| 67 | 63 | || 10진수 || 2^^^3^^^ || 2^^^2^^^ || 2^^^1^^^ || 2^^^0^^^ || |
| 68 | 64 | || 9 = || 1 || 0 || 0 || 1 || |
| 69 | 65 | || 5 = || 0 || 1 || 0 || 1 || |
| 70 | 66 | || (9|5) = 13 || 1 || 1 || 0 || 1 || |
| 71 | {{{#!if (9|5) ==1 | |
| 67 | }}} | |
| 68 | (9|5)==12를 테스트하게 되면 일(2^^^0^^^)의 자릿수가 틀려서 출력되지 않는다.{{{#!if (9|5) ==12 | |
| 72 | 69 | 출력 (1101)}}} |
| 73 | ---- | |
| 74 | (9|5)=12 테스트 : 일(2^^^0^^^)의 자릿수가 틀려서 출력되지 않는다. | |
| 75 | {{{#!if (9|5) ==12 | |
| 76 | 출력 (1101)}}} | |
| 77 | 70 | |
| 71 | 그러므로 | 기호는 비트 연산으로 쓰이든 논리 연산으로 쓰이든 "OR"로 계산된다. | |
| 72 | ||
| 78 | 73 | == & 기호 테스트 == |
| 79 | 74 | === 논리 연산 === |
| 80 | 75 | & 기호 테스트 (한 쪽 false) : 출력되지 않는다. |
| ... | ... |