정보) 컴퓨터공학과 과목 맛보기 - 2. 시스템프로그래밍(1)
게시글 주소: https://old.orbi.kr/00066046560
어제 쓴 글이 별 반응은 없었으나.. 일단 적기 시작했으니까 계속 가보려고 합니다.
오늘은 '시스템프로그램'이라는 과목입니다.
(다른 학교에서는 어떻게 부르는지 잘 모르겠네요.)
필자가 이 과목을 수강했던 학기는 2020년(2학년) 1학기, 평점은 A+였습니다.
자료구조는 솔직히 전공이라고 봐주기에는 애교 수준이고
이 과목을 듣기 시작해야 '아 내가 컴퓨터공학과에 왔구나'하는 느낌이 좀 듭니다.
'시스템프로그램 - 컴퓨터구조 - 운영체제'로 이어지는 시스템 과목 중 가장 앞 과목입니다.
이 과목에서는 뒤의 두 과목을 듣기 위한 기본 지식을 배운다고 보시면 됩니다.
시스템이 도대체 뭐냐?고 물으신다면 마지막에 있는 '운영체제'를 떠올리시면 됩니다.
윈도우, 안드로이드, iOS 같은 운영체제 또한 소프트웨어이고,
흔히 우리가 앱이라고 부르는 어플리케이션 소프트웨어는 시스템 소프트웨어 위에서 동작하기 때문에
시스템에 대해 아는 것이 굉장히 중요하다고 볼 수 있습니다.
우리가 많이 쓰는 프로그램들도 시스템 단에서 최적화되어있는 부분이 많습니다.
시스템에 대해 잘 알아야 다른 소프트웨어도 잘 만들 수 있다는 것이죠.
-------------------------------------------
컴퓨터하면 뭐가 떠오르시나요? 아무래도 2진법 아닐까요?
컴퓨터는 모든 정보를 0과 1로만 저장합니다.
이 과목에서는 이런 비트에 관한 내용을 먼저 배웁니다.
비트에 관해서는 signed와 unsigned의 차이, 2의 보수,
& / | / ~ / ^ / << / >>와 같은 비트 관련 연산자, overflow 등 매우 많은 것을 배우지만,
여기서는 숫자를 어떻게 저장하는 지에 대해서 살펴보죠.
근데 우리가 주로 쓰는 체계는 10진법입니다.
근데 컴퓨터는 이러한 10진법 숫자를 어떻게 저장하고 계산할 수 있을까요?
또한 정수가 아닌 소수들은 어떻게 저장할까요?
정수는 다들 어떻게 바꾸는 지는 대충은 아시니까.. (2로 계속 나눠서..)
소수를 2진법으로 바꾸는 방법을 보면, 이것도 정수를 바꾸는 것과 크게 다르지 않습니다.
소수점에서 멀어질 수록 1/2배가 되도록 바꾸면 됩니다. (정수와 반대로 2를 계속 곱합니다.)
예를 들어 7/8은 1/2+1/4+1/8과 같으므로 2진법으로 쓰면 0.111이 되는거죠.
그럼 이렇게 2진법으로 바꾼 숫자를 어떻게 저장할까요?
C언어를 배우다 보면 float라는 자료형을 배우게 됩니다.
이건 소수점을 저장하기 위해 사용하는데요.. 근데 왜 이름이 float일까요?
그것은 바로 컴퓨터가 소수점을 저장하는 방식과 관련 있습니다.
바로 부동소수점(floating point)라는 방식을 사용하거든요.
영문을 보시면 아시겠지만 뜰 부(浮), 움직일 동(動)입니다.
떠다니면서 움직인다는 건데요, 과연 무엇이 떠다닌다는 뜻일까요?
바로 소수점이 움직인다는 것입니다. 소수점이 움직인다는 게 무슨 뜻인지 감이 안 오시죠?
부동소수점의 반대 개념인 고정소수점을 먼저 설명해야 이해가 쉬울 듯 합니다.
고정소수점(fixed point) 방식은 말 그대로 아까 바꾼 숫자를 그대로 저장하는 방식입니다.
6.875라는 소수를 저장한다고 예를 들어보죠.
6.875를 2진수로 바꾸면 110.111이 될 것입니다.
이렇게 바꾼 정수부와 소수부를 결과 그대로 110, 111로 저장하는 게 고정소수점 방식입니다.
이러한 방식은 제한적인 메모리 공간을 효율적으로 사용할 수가 없습니다.
만약에 정수부 소수부가 각각 4비트씩 있으면,
정수부는 0000(=0) ~ 1111(=15), 소수부는 0000(=0) ~ 1111(=15/16) 범위 내에서만 사용 가능하거든요.
그래서 이러한 문제를 해결하기 위해 부동소수점이라는 방식을 도입하게 됩니다.
이 방식은 숫자를 저장하기 전에 한 가지 연산을 더 해야해요.
아까 6.875를 다시 끌고 오죠.
얘는 2진수로 110.111인데 이는 11.0111에 2를 곱한 것과 같고,
1.10111에 4를 곱한 것과 같습니다. (10진수 10.1이 1.01의 10배인 것과 같습니다.)
6.875 = 110.111(2) = 1.10111(2) * 2^2 라는거죠. ((2)는 2진수라는 뜻)
이렇게 110과 111 사이에 찍혀있던 소수점을
1과 10111 사이로 옮겨버렸습니다. 이래서 우리는 이 방식을 부동소수점이라고 부릅니다.
이렇게 변형한 숫자를 어떻게 저장하냐면
1.10111이라는 앞에 곱해진 가수(fraction/mantissa)와
2에 붙어있는 지수(exponent)인 2를 저장합니다.
이런 지수를 이용하는 방식으로 저장하기 때문에
매우 큰 범위의 수를 적은 수의 비트로도 저장할 수 있는 거죠.
(로그라고 하기는 뭐한데 비슷하게 생각하시면 됩니다. 스케일을 줄이는 거죠.)
컴퓨터에 관심이 있으신 분들 중에 IEEE라는 곳을 들어보신 적이 있으실 겁니다.
IEEE는 Institute of Electrical and Electronics Engineers라는 조직으로
전자전기공학에 대한 표준을 제정하는 곳입니다.
우리가 많이 쓰는 Wi-Fi 있죠? 그것도 여기서 제정한 표준 규격입니다. IEEE 802.11이라고 부르죠.
부동소수점도 대부분의 컴퓨터가 이곳에서 제정한 방식(IEEE 754)으로 저장합니다.
단, 이 방식에는 단점도 분명 존재합니다.
가장 큰 문제는 아무래도 저장하고 싶은 숫자를 정확하게 저장할 수 없을 때도 있다는 겁니다.
가수부의 비트가 무한정하지는 않기 때문이죠.
또한, 고정소수점 방식에 비해 덧셈/뺄셈이 느릴 수 밖에 없습니다.
-------------------------------------------
반 학기 동안 이것 외에도 비트에 대한 많은 내용을 배우고 씨름하게 됩니다.
글이 너무 길어져서 여기서 끊고 계속 작성해보겠습니다.
제가 적은 글 (클릭하면 연결)
(현재 글) 3. 컴퓨터공학과 과목 맛보기 - 2. 시스템프로그래밍(1)
4. 컴퓨터공학과 과목 맛보기 - 2. 시스템프로그래밍(2)
0 XDK (+0)
유익한 글을 읽었다면 작성자에게 XDK를 선물하세요.
-
보인다 보여 ㅋㅋ 그와중에 카타르 도하 뭐임 ㅋㅋ 중대 한건희 전기 단국 강기원...
-
출처 - 디씨 JLPT갤러리 + 나무위키 JLPT 항목 N5 한자는 천자문으로 치면...
-
아니면 말고요... (._.
-
23살 오타쿠가 알려주는 일본어공부 쉽게 시작하는법. 21
나는 3달뒤면 군입대를 하게되는 23살 오타쿠야. 필자는 중학교때부터 M자탈모와...
-
정도면 수능 몇나올까요?
-
1. 언어는 적성 아닌가요? ->단언컨대 언어를 배우는 데 가장 중요한 가치는...
-
목적어-동사-주어 어순
-
યુવુદુ યુવુદુ યુવત્રવત્રવત્ર યુવુદુ 10
યુવુદુ યુવુદુ યુવત્રવત્રવત્ર યુવુદુ યુવુદુ...
-
પ નભપ નુૂપ ? 11
નુૂન.
-
서울대 정시만 해당하는 거죠? 그냥 러시아어 취미로 배워봐서 러시아어 신청한...
-
태국어 글씨가 너무이뻐서 꼭 배워보고 싶다는 생각이 드네여...ㅋㅋㅋ 영어 일본어...
-
2017년도 그러니까 올해 영어 특기자 전형을 실시하는 학교 중에 고려대. 연세대가...
-
신택스 너무어렵더라구요 ㅠㅜ 일리 듣고 복습하고 그러면 신택스 들을 수준이...
-
전 수능 제2외궈로 아랍어 공부했었어요... 근데 불어, 스페인어, 러시아어 등...
-
강의는 파블로프만 듣게요.. 아니 강의는 좀 별로인거 같아서요..
-
안녕하세요 고2 문과 학생입니다 수능 때 아랍어를 보려고 생각중인데 언제부터...
-
안녕하세요. 오랜만에 질문 드립니다. 마지막으로 질문 해봅니다. 2012수능...
-
ebs 강의중에 나비효과 만큼 좋은 강의 있을까요? 21
윤혜정 T 나비효과 1/5정도 들었는데 굉장히 좋네요. 언어나 외국어 ebs 강의...
-
우선 독학재수하고있습니다 군대 전역하고 2월부터 공부하고있습니다 영어가...
-
수능 다시 공부하는 장수생입니다. 언어 외국어 기출문제집 어떤 거 푸시나요? 수리는...
-
학교 : 전북대학교학과 : 영어영문학과학번 : 10나이 : 23성별 : 여현 거주지...
-
전 애초에 시험에 반영되는 텍스트가 있다는 게 마음에 안 들어서; 영어는 어떤...
-
전부터 듣기22 독해 23 이 유형으로만 2년간 풀어서 그런건지.14학년도 이전...
-
아무리 찾아봐도 정보가 없어서요 이거 책 괜찮은가요?
-
이솔루션,이젠 빈칸정복,텝스 빼고요
-
빈칸대반전 책이 두 권이 있던데요 흔히 말하는 어려운 교재가 익스트림 인가요?...
-
영어듣기 풀게 없어서 현재는 텝스하고있긴한데 적당히 어려운 난이도의 듣기문제집을...
-
외국어 문제집 마수가 2009년 이후에 안나오나요? 1
난이도가 매우 어려워서 한번 풀어봤는데 좋아서 다른년도 마수를 찾아보려고하니...
-
작년이든 제작년이든 이명학 리로직 2.0 듣거나 푸신분께 질문요 4
리로직 2.0 난이도가 어떻게 되나요?
-
1994~2012년 수능외국어기출 어휘 출제횟수 분석입니다. 9
안녕하세요.나쁜 수능영어 저자 Mike Hwang 선생님입니다.오르비와 인연이...
-
현재 외국어 1~2진동하는상황인데 문법에서 빈틈이 조금씩...
-
대학교 : 한양대학교 고등학교 : 서울외고(영어중국어학과) 학과 : 행정학과 학번...
-
외국어 독해 0
이명학쌤 현강듣고 있고요평소에 독해가 약한데 현강에서는 문법하신다 그래서마이맥 독해...
-
안녕하세요 저는 작년수능 외국어3등급 맞은 반수생인데요 지금은 이비에스랑 기출하면서...
-
저번 6월 모평에서 원점 89맞고 백분위 89로 진짜 딱 턱걸이로 2등급...
-
예를 들어서 해석은 되는데 논리력이 부족한 사람이라던가..신택스랑 리앤로 들어볼려고...
-
말 그대로 입니다.. 오르비에 올라와있는 문제 싹다 풀어봤고요 N제도 다...
-
34번 만족에 대한 빈칸 글 있잖아요. 보면 빈칸문장은, 만족한다는것은 빈칸이랑...
-
영어학원다니다가 선생님이랑 의견차이가 심해서 끊게되어서 수능특강 진도가 많이...
-
It was a wet and gloomy day 비가 올 듯한 우울한 날이였다...
-
3학년올라가고 2학년모의고사는 고정적으로1등급은 떳는데, 감독해로 문제를 풉니다...
-
막 친구는 문장구조 다분석하고 하던데 전 풀고 틀린거체크하고 모르는단어외우고...
-
천일문 완성편에ㅇ있는 지문인데요 Since the human body is...
-
쓰면서 외우는거 비추인가요?어렸을 때 아빠가 제게 쓰면서 외우면 아빠는 그게 잘...
-
지금 제가 영단어 공부를 잘하고 있나요?? 외궈 괴수분들 조언 부탁드립니다~ 4
저번에도 같은 질문을 올렸는데.. 결정을 못해서 다시 올려요~지금 단어장 3권을...
-
텝스 공부를 하려는데어떻게 시작해야 될 지 막막하네요.교재나 강의(무료강의면...
-
Have you ever heard about people who have...
-
구문(Syntax)과 문법(Grammar)의 차이를 모르는 모든 분들에게... 23
안녕하세요? 오르비 영어 인강강사 상변선생입니다. 오늘은 영어 교육에서 어쩌면 가장...
-
The current rich world, whose population is...
-
Several of these European countries are now...
꾸준하시네요..
![](https://s3.orbi.kr/data/emoticons/orcon/020.png)
선 좋아요 후 감상아.. 섰다
끼요옷
1.2 == 1.2
이 과목을 들으면 왜 이렇게 되는지 알 수 있습니다.
제발 갈등 메타 이딴 글 메인으로 올리지 말고
이런 칼럼 좀 메인으로 올립시다!!
![](https://s3.orbi.kr/data/emoticons/oribi_animated/016.gif)
전 1명이라도 봐주는 분이 있기만 하면 만족합니다..