달력

12

« 2019/12 »

  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  •  
  •  
  •  
  •  


 

비트 연산자(bitwise operator)

·       Bit Operator

·       피연산자 연산의 대상이 되는 값들을 내부적으로 bit(비트)단위 변경한 연산을 수행하는 연산자입니다.

·       논리 연산자와 비슷하지만, 비트(bit) 단위로 논리 연산을 수행합니다.

·       0 1 자리에 대한 연산을 수행하며, 0 또는 1 결괏값을 가진다.

·       하드웨어와 관련된 처리를 쉽게 해줍니다.

·       메모리 공간을 줄여서 성능을 높여 있습니다.

 

 

 

'Development > C/C++' 카테고리의 다른 글

C  (0) 2019.05.29
반복문  (0) 2019.05.28
비트 연산자(bitwise operator)  (0) 2019.05.28
비트(Bit)  (0) 2019.05.27
바이트(byte)  (0) 2019.05.27
fread( ) 함수와 fwrite( ) 함수 - 바이너리 파일 입출력  (0) 2019.05.26
Posted by codedragon codedragon

댓글을 달아 주세요


 

 

jQuery Mobile (제이쿼리 모바일)

·         모바일 사이트를 위한 UI 프레임워크로서 모바일 기기에 최적화된 오픈소스 프레임워크입니다.

·         HTML 페이지에 약간의 코드만 추가하면 곧바로 모바일에 최적화된 모습으로 변경할 있아 웹앱을 쉽게 구현할 있도록 도와주는 기술입니다.

·         제이쿼리와 연계되어 있으며 이미 완성되어 있는 UI 제공하기 때문에 디자인과 코딩 부담을 덜어 있습니다.

·         HTML 태그에 속성을 추가하는 방식으로 UI 생성하기 때문에 자바스크립트와 같은 동적인 언어에 대한 이해가 없이도 모바일 웹사이트를 만들 있습니다.

 

https://en.wikipedia.org/wiki/JQuery_Mobile

 

 

 

https://jquerymobile.com/


 

 

 

 


Posted by codedragon codedragon

댓글을 달아 주세요


 

관계 연산자(Relational Operator)

·       비교 연산자(comparison operator) = 논리 관계 연산자

·       변수나 상수의 값을 비교 쓰이는 연산자( 피연산자 사이의 관계를 확인)입니다.

·       관계를 비교하여 (True) 거짓(False) 결과로 반환하는 연산자

·       연산 결과는 항상 true 또는 false 논리값(boolean) 반환됩니다.

·       if, when 조건식과 함께 많이 사용됩니다.

 

 

 

 

비교 연산자 종류

개의 피연산자를 가지는 이항 연산자이며, 피연산자들의 결합 방향은 왼쪽에서 오른쪽입니다.

연산자

의미

반환값

> 

크다

 

n1 > n2

//n1 n2보다 큰가?

왼쪽 피연산자가 오른쪽 피연산자보다 크면 , 아니면 거짓

< 

작다

 

n1 < n2

 //n1 n2보다 작은가?

왼쪽 피연산자가 오른쪽 피연산자보다 작으면 , 아니면 거짓

>=

크거나 같다

 

n1 >= n2

//n1 n2보다 같거나 큰가?

왼쪽 피연산자가 오른쪽 피연산자보다 크거나 같으면 , 아니면 거짓

<=

작거나 같다

 

n1 <= n2

//n1 n2보다 같거나 작은가?

왼쪽 피연산자가 오른쪽 피연산자보다 작거나 같으면 , 아니면 거짓

==

피연산자들의 값이 같다

 

n1 == n2

//n1 n2 같은가?

왼쪽 피연산자가 오른쪽 피연산자와 같으면 , 아니면 거짓

!=

피연산자들의 값이 같지 않다

 

n1 != n2

//n1 n2 다른가?

왼쪽 피연산자가 오른쪽 피연산자와 다르면 , 아니면 거짓

 

 


Posted by codedragon codedragon

댓글을 달아 주세요


 논리 연산자와 SCE(Short-Circuit Evaluation)

·       SCE '최단거리 연산'이라고도 합니다.

·       연산 결과 나온것에 대해 더 이상 연산을 수행하지 않습니다.

·       자바(JAVA) SCE 연산을 지원합니다.

·       자바스크립트(JaveScript) SCE 연산을 지원합니다.

·       파이썬(Python)SCE 연산을 지원합니다.

 

 

연산자

설명

AND

·       선조건이 true일 때만 후조건을 실행하며

·       선조건이 false일 경우 후조건을 실행하지 않습니다.

OR

·       선조건이 true이면 후조건을 실행하지 않으며

·       선조건이 false인 경우에만 후조건을 실행합니다.

 

Posted by codedragon codedragon

댓글을 달아 주세요


 

증감 연산자(increment and decrement operators)

·       변수에 저장되어 있는 값을 1씩 증가 혹은 감소시킬 때 사용하는 연산자입니다.

·       모든 수치 데이터 형식과 열거형식에서 사용합니다.

·       ++ 또는 -- 연산자가 변수 앞에 위치하느냐? 아니면 변수 뒤에 위치하느냐? 에 따라 값이 달라질 수 있으므로 증감연산자를 사용하실 때는 항상 주의하셔야 합니다.

 

 

증감 연산자 종류

피연산자가 단 하나뿐인 단항 연산자입니다.

연산자

의미

++

피연산자의 값을 1 증가

--

피연산자의 값을 1 감소

 

 

코드를 간결하게하고 속도를 향상시킬 수 있지만 이것이 오히려 가독성을 저해할 수 있으며, 피연산자의 위치에 따라 결과가 다르게 나올 수 있기 때문에 주의해야 합니다.

증감 연산자

설명

++a

선 증가, 후 연산 (먼저 증가하고 그 다음 연산)

a++

선 연산, 후 증가 (먼저 연산하고 그 다음 증가)

--a

선 감소, 후 연산 (먼저 감소하고 그 다음 연산)

a--

선 연산, 후 감소 (먼저 연산하고 그 다음 감소)

 

 

 

증감 연산자 prefix/postfix 기능

전위/후위  연산자에 따라 달라지는 result 값을 확인합니다.

후위 연산자의 증가 또는 감소한 값은 다음 라인 부터 적용됩니다.

연산자

연산자 기능

연산 과정

result

++(prefix)

·       피연산자의 값을 1 증가

 

n=7

result = ++n

 

·       선 증가, 후 연산 (먼저 증가하고 그 다음 연산)

++7 -> 8 -> result = 8

8

--(prefix)

·       피연산자의 값을 1 감소

 

n=7

result = --n

 

·       선 감소, 후 연산 (먼저 감소하고 그 다음 연산)

--7 -> 6 -> result = 6

6

(postfix)++

·       피연산자의 값을 1 증가

 

n=7

result = n++

 

·       선 연산, 후 증가 (먼저 연산하고 그 다음 증가)

result = 7 -> 7++ -> 8

7

(postfix)--

·       피연산자의 값을 1 감소

 

n=7

result = n--

 

·       선 연산, 후 감소 (먼저 연산하고 그 다음 감소)

result = 7 -> 7-- -> 6

7

 

 

 

증감 연산자 선행/후행 실행후 결과값 확인

증감연산자 후행에서는 증가/감소값이 해당 연산 수행문에서는 적용이 되지 않고

다음 문장 부터 적용(다음 연산 부터 적용)이 되게 됩니다. (주의)

 

Posted by codedragon codedragon

댓글을 달아 주세요



 

복합대입 연산자(약식 대입 연산자)

·       대입 연산자와 다른 연산자를 결합하여 만든 다양한 복합 대입 연산자를 제공합니다.

·       대입 연산자와 산술 연산자를 함께 사용하는 연산자로 반복되는 변수가 생략된 형태입니다.

·       대입 연산자와 같은 우선순위를 가지며, 대입 연산자와 마찬가지로 결합순서는 오른쪽에서 왼쪽입니다.

 

연산자

의미

+=

왼쪽 변수값과 더하기 연산 수행하면서 대입

-=

왼쪽 변수값에서 빼기 연산을 수행하면서 대입

*=

왼쪽 변수값과 곱하기 연산을 수행하면서 대입

/=

왼쪽 변수값에 나누기 연산 수행하면서 대입

%=

왼쪽 변수값에 나머지 값을 구하면서 대입

 

 

 

복합대입 연산자 의미

산술 연산자와 대입 연산자를 하나로 나타내는 기호

산술 연산자

복합대입 연산자

 

a = a + b

a += b

a b의 합을 a에 저장

덧셈 연산

a = a - b

a -= b

a에서 b를 뺀 차를 a에 저장

뺄셈 연산

a = a * b

a *= b

a b의 곱을 a에 저장

셈 연산

a = a / b

a /= b

a b로 나눈 몫을 a에 저장

나눗셈 연산

a = a % b

a %= b

a b로 나누었을 때 나머지를 a에 저장

나머지 연산

 

 

Posted by codedragon codedragon

댓글을 달아 주세요


 

연산자(Operator)

·       연산자란 자료의 가공을 위해 정해진 방식에 따라 계산하고 결과를 얻기 위한 행위를 의미하는 기호들을 의미합니다.

·       각 연산자들은 연산을 하기 위해 인식하는 자료형들이 정해져 있습니다.

 

 

Posted by codedragon codedragon

댓글을 달아 주세요

   

  

논리 연산자(logical operator)

·       불린 연산(Boolean Operation)이라고도 합니다.

·       참과 거짓으로 이루어지는 진리값이 피연산자인 연산자입니다.

·       true false인 논리 값을 가지고 다시 한번 조건 연산하는 연산자입니다.

·       하나 이상의 처리 조건이 있어야 하며 먼저 처리되는 조건에 따라 다음의 처리 조건을 처리할지 안 할지를 결정하는 논리적인 연산자입니다.

 

 

 

논리 연산자 종류

AND 연산과 OR 연산은 두 개의 피연산자를 가지는 이항 연산자이며, 피연산자들의 결합 방향은 왼쪽에서 오른쪽입니다.

NOT 연산자는 피연산자가 단 하나뿐인 단항 연산자이며, 피연산자의 결합 방향은 오른쪽에서 왼쪽입니다.

연산자

의미

설명

&&

and

논리곱

·       주어진 조건들이 모두 true일 경우에만 true

·       a &&  b     //a b 모두 true이면 연산결과는 true

||

or

논리합

·       주어진 조건들 중 하나라도 true이면 true

·       a ||  b    //a b 둘중 하나라도 true이면 연산결과는 true

!

no

부정

·       true이면 false false이면 true

·       !a     //연산결과는 a true이면 false, a false이면 true

 

 

 

&& 논리 연산자 결과

선조건

&&

후조건

Result

true

&&

true

true

true

&&

false

false

false

&&

true

false

false

&&

false

false

 

 

|| 논리 연산자 결과

선조건

||

후조건

Result

true

||

true

true

true

||

false

true

false

||

true

true

false

||

false

false

 

 

논리 연산자 결과

연산자

후조건

Result

!

true

false

!

false

true

 

 

 

Posted by codedragon codedragon

댓글을 달아 주세요


 

산술 연산자(arithmetic operator)

·       4 연산(+, -, *, /) 나머지 값을 구하는 연산자(%) 지칭합니다.

·       산술 연산자는 모두 개의 피연산자를 가지는 이항 연산자입니다.

·       피연산자들의 결합 방향은 왼쪽에서 오른쪽입니다.

 

 

 


Posted by codedragon codedragon

댓글을 달아 주세요

양수/음수에서 비트단위 이동 연산 수행

   

   

   

소스코드

   

#include <stdio.h>

int main(void)

{

int num1=10;

//00001010

int num2=-10;

//11110101 (1의보수)

//11110110 (1 더함) //-10

int result1;

int result2;

result1 = num1 >> 1;

//00000101

//양수인경우 0으로 채움

result2 = num2 >> 1;

//11111011 //-5

//음수인경우 1 채움

//오른쪽으로 1비트씩 이동할 마다 2 나누어집니다.

//11111011 //-5

//00000100 (1의보수)

//00000101 (1 더함) //5

printf("비트단위 >> 연산 결과: %d \n",result1); //5

printf("비트단위 >> 연산 결과: %d \n",result2); //-5

return 0;

}


   

   

출력결과

 

Posted by codedragon codedragon

댓글을 달아 주세요