Note* 1byte**=**8bit=2^8

Note* unsigned 하면 양수만 된다.

Note* 자료형 변화할 경우 (자료형)(data)으로 표기

Untitled

정수형

실수형

이때, 한정된 메모리로 실수와 같이 무수히 많은 경우의 수가 있을 경우 부동소수점을 이용한다.

→ because 소수 표현 방식으로 인해 근사치가 발생하므로 수식계산시 차이가 발생할 수 도 있다.

그럴경우, if문등이 작동안할 수 도 있다!!!

Note* 실수뒤에 f를 적으면 float로 생각, 아닐경우는 double로 판정


비트 연산자

  1. 쉬프트 << >>

    data<<n : data값을 n만큼 왼쪽으로 shift

    → mean : data를 2^n배 만큼 커진다는 뜻이다.

    ex) data<<=3; → data를 8배 늘려서 data에 저장한다

    data>>n : data값을 n만큼 오른쪽으로 shift

    → data를 2^n배 만큼 줄어든다

    if data가 홀수라면? → bit 마지막(2^0)부분이 1이라는 소리 → shift하면 사라지므로 몫을 선택

    ex) data>>=1; → data=13일때 2로 나눈 후 몫

  2. 곱(각 위치의 bit가 같은지 안같은지를 판정) & look like and 연산자

    두 변수의 bit가 같다면 1, 아니라면 0으로 판정하여 결과를 내놓는다.

    ex) 10011과 10001을 보면 11100으로 결과가 나올것이다.

  3. 합(각 위치의 bit를 더하여 판정) |

    ex) 10011과 10001을 보면 11111으로 결과가 나올것이다.

  4. xor(곱의 반대 연산) ^

    같은자리의 bit가 같다면 0, 다르면 0을 판정한다.

  5. 반전(각 위치의 bit를 0↔1을 바꾼다) ~