쑤쑤_CS 기록장
[TIPS 20기]1. C언어 첫번째 강좌 정리 본문
12월 27일 한파로 날씨가 정말 추웠던,
2018년의 D-5 마지막 목요일에 TIPS 20기 첫번째 수업이 있었습니다..!
설렘 반 기대 반의 마음으로 @케이트윈타워 MicroSoft본사 건물에서 김성엽 선생님의 알찬 수업을 들었습니다 : )
오늘 수업은 아래 순서로 진행되었습니다.
1. TIPS 강의 소개 및 마음 가짐 2. 왜? 자료형과 변수가 나왔는지 3. C언어 강의
1. TIPS 강의 소개 및 마음 가짐
부분에서 저에게 의미 있게 다가온 내용은, 본인이 이 "강좌의 주인공"인 것 처럼 열심히 들으라는 선생님의 말씀이었습니다..ㅎㅎ
사실 아직 유튭 강의를 많이 보지 못했는데,,,,(솔직다현ㅎㅅㅎ) 2019년에는 열심히 보는 제가 될게요! :)
그리고 프로그래머 라는 직업에 대한 칭찬과, 창의력의 중요성, 공부를 할 때는 다른 사람에게 설명하듯이 공부하면 좋다는 등 지식 나눔과 관련된 여러 좋은 말씀을 해주셨습니다. ㅎㅎㅎ
2. 자료형과 변수가 나온 이유
* 1. 명령 -> 2. 정보 의 순서로, 명령이 정보보다 먼저오면 뒤에 뭐가 올리 정해지며 "한정"의 역할을 합니다.
* 데이터의 저장은 '비트'단위로 저장되고, 메모리의 관리 단위는 '바이트'입니다.
* 메모리에 필요한 요소(3) 세 가지는 : 명령에 대한 주소, 크기, 값 입니다. 주소는 시작 주소를 의미하고, 크기는 얼마나를 의미합니다.
* 중요한 "컴퓨터의 데이터 처리 원칙" 입니다.
위와 같은 순서로 명령 단위가 구성됩니다.
예를들어,
대입. 1. 2. 5 는 어셈블리어의 형식으로, 대입이라는 명령을 시작주소는1, 그 크기는 2만큼, 값은 5 라는 의미입니다. 이것의 컴퓨터의 방식입니다.
* 이때, 두 가지 문제가 발생합니다.
P1. 시작주소를 기억하기 어렵다
P2. 크기가 틀리기 쉽다
위와 같은 문제가 발생하면, 다른 메모리를 침범하기 됩니다.
그래서 1) 기억하기 편하게 2) 숫자 안 틀리게 의 방식으로 문제를 해결하기 위해 자료형과 변수가 사용됩니다!
시작주소 기억의 문제P1은, "변수"의 사용으로
크기가 틀리는 문제P2는, "자료형"의 사용으로
해결됩니다 :)
* 소스 파일을 실행파일로 바꾸는 프로그램에는 컴파일러(번역기)가 있습니다.
이때 컴파일러가 어떤 크기를 쓸지 선택지를 제공합니다.
예를들어, C언어의 컴파일러에서
char a; a=5;
는 char가 몇 바이트의 크기인지, a가 시작주소의 번지 임을 의미합니다.
원본 내용 : https://blog.naver.com/tipsware/221044039893
<자료형과 변수에 대한 못다 한 이야기>
그동안은 '그냥 사용하지,,'라고 넘어갔던 부분을 이렇게 원리로 알게 되니 정말 새로웠습니다! :)
그리고 선생님이 해주신 좋은 말씀,,
"쉬워졌다=프로그래머의 권리를 잃어버림"이라는 말,, 여러분은 생각 해보신 부분인가요?
컴파일러의 발전으로 쉬워진다는 것은 개발자가 표현할 수 있는게 줄어든다 라는 관점..!!
에 대해서도 생각해볼 수 있었습니다.
3. 본격적인 C언어 강의
아래 링크에서 강의를 수강할 수 있습니다 ^^
제 블로그는 유튭 강의 내용이 많이 생락되고, TIPS 강좌의 수업 내용을 위주로 기록합니다.
https://blog.naver.com/tipsware/221198607335
[1장]
* 컴파일러 : 프로그래밍 언어를 기계어로 번역하는 역할
* 계산기와 프로그래밍 : 비슷하다. 입력문, 출력문, 상수 등 기본적인 구성 요소가 동일하다
* 단일; / 복합{} 서술문 : 문장 분리자의 역할을 한다. C언어에는 문장 종결자가 따로 없다.
* 예약어 = 키워드 : 같다. 컴파일러가 자기가 쓰겠다고 예약해놨다. 따라서 내가 쓰면 안된다.
* 소스파일 <----------> 목적파일 <-------> 실행파일
<-컴파일-> <-------> <-링크->
<-빌드->
* 소스파일을 나누는 이유 : 변경된 부분만 다시 컴파일 하기 위해. 재활용을 통해 컴파일 시간을 줄이기
[2장]
생략. 동영상 강좌를 보세요.
[3장]
* 부호비트: 음수 / 양수(0 포함) 두 가지로 나누어 진다. +) 부호비트가 맨 왼쪽에 위치하는 이유?! 생각해보기
* 메모리를 절약하는 것이 중요한가?
* 아스키 코드
[ASCII] : [문자]
0 : NULL
48 : 0
65 : A
97 : a
* 자료형
정수를 표현하는 자료형 char
- signed char 부호가 있는 1바이트 저장 공간
- unsigned char 부호가 없는 1바이트 저장 공간
정수를 표현하는 자료형 short int
- signed short int 부호가 있는 2바이트 저장 공간
- unsigned short int 부호가 없는 2바이트 저장 공간
정수를 표현하는 자료형 long int
- signed long int 부호가 있는 4바이트 저장 공간
- unsigned long int 부호가 없는 4바이트 저장 공간
* 실수연산 : 안 쓸 수 있으면 안쓰는게 좋다. 정수형으로 계산하기!
수업을 중심으로 정리해 보았습니다.
앞으로도 조금 더 간단 명료하게 정리, 복습하기 위해 노력하겠습니다 :)
읽어주셔서 감사합니다!
<수업 사진>
'IT 지식 기록 > TIPS - C 언어 수업 정리' 카테고리의 다른 글
[TIPS 20기]11. Windows 첫번째 강좌 정리 (0) | 2019.02.14 |
---|---|
[TIPS 20기]2. C언어 두번째 강좌 정리 (0) | 2019.02.13 |
[TIPS 20기]3. C언어 세번째 강좌 정리 (0) | 2019.02.07 |
[TIPS 20기]8. C언어 여덟번째 강좌 정리 (0) | 2019.01.28 |
[TIPS 20기]7. C언어 일곱번째 강좌 정리 (0) | 2019.01.24 |