[KOCW 한국산업기술대학교 박정민 교수님] C 프로그래밍 5강

MinWoo Park·2021년 8월 20일
0

KOCW

목록 보기
5/19
post-thumbnail

Part5 연산자란 무엇인가?


5.1 변수와 변수의 시작 주소

변수

  • 데이터를 저장하는 임시 저장 공간, 메모리 공간

변수의 시작 주소

  • 메모리 공간의 위치
  • &변수 형태로 메모리 주소를 알 수 있음

5.2 연산자의 종류

연산자의 종류가 워낙 많아 따로 정리는 하지 않음.
연산에서 알아둘 것은 CPU는 연산만 하고 그 결과 값은 메모리에 저장하는 것임.


5.3 비트 연산자

비트와 바이트

  • 컴퓨터는 모든 정보를 1과 0 즉, 이진(Binary) 값으로 저장하고 처리
    그 이유는 현대 컴퓨터는 전자식 컴퓨터로 데이터를 전기 혹은 전자 신호를 이용하여 저장하고 관리하는데 전류가 흐르는 상태를 1, 전류가 흐르지 않는 상태를 0으로 표현할 수 있기 때문
  • 컴퓨터의 기억 장치는 모든 신호를 2진수로 고쳐서 기억, 2진수에서 0, 1과 같이 신호를 나타내는 최소 단위를 비트(Bit)라고 함.
  • 8비트가 모이면 1바이트가 됨.

2진수, 10진수, 16진수, 8진수

  • 2진수(Binary): 0~1까지 숫자 사용
  • 10진수(Decimal): 0~9까지
  • 16진수(Hexadecimal): 0~9까지 이후 a,b,c,d,e,f 문자를 사용, 0x를 맨 앞에 붙여 구분
  • 8진수(Octal): 0~7까지, 0을 맨 앞에 붙여 구분
  • 다양한 진수 표현을 사용하는 이유는 컴퓨팅 세계에서는 2진수 표현이 길이가 매우 길어져서 16진수, 8진수로 가독성을 높일 수 있음.

비트 연산자

  • 데이터를 비트 단위로 처리하는 연산자, 하드웨어와 밀접하게 관련된 처리를 쉽게 해주고 메모리 공간을 줄여서 성능을 높여줌
  • AND 연산: &, ex) a & b
  • OR 연산: |, ex) a | b
  • XOR 연산: ^, ex) a ^ b
  • NOT 연산: ~, ex) ~a
  • 왼쪽으로 이동: <<, ex) 왼쪽으로 세 칸 이동 a << 3
  • 오른쪽으로 이동 >>, ex) 오른쪽으로 한 칸 이동 a >> 1

Reference
강의: 박정민, 『C 프로그래밍』, KOCW 한국산업기술대학교, 5강
교재: 박정민, 『열혈강의 C 언어 본색 명강의가 일으키는 C 언어 기적』, 프리렉 (2011), p91-128.

profile
물음표를 느낌표로 바꾸는 순간을 사랑하는 개발자입니다.

0개의 댓글