Hello Computer Vision

비전공생의 컴퓨터 구조 9주차 강의 기록 본문

컴퓨터구조

비전공생의 컴퓨터 구조 9주차 강의 기록

지웅쓰 2022. 11. 19. 00:19

최근에 과제랑 팀플이 너무 몰려서 정신이 없네요..

그럼 오늘 강의 들은 것 간략하게 기록해보겠습니다.

 

저번에 이어서 산수연산 예제들을 많이 살펴보았습니다.

컴퓨터가 곱셈을 실행할 때는 단순히 하는 것이 아닌 알고리즘에 맞추어 곱셈을 합니다.

그렇다는 것은 어떤 알고리즘을 쓰냐에 따라 효율성과 속도가 달라질 거 같네요.(나눗셈도 마찬가지)

최근 CPU에는 10억개 이상의 회로가 있다.(스마트폰에는 더 많은 회로가 집적되어서 있다고 합니다. 그래서 고장이 잘나나..?)

그래서 덧셈뺄샘 정도는 빠르게 할 수 있다. 여기서 연산은 integer연산을 말한다.

 

내가 예전 자바를 공부할 때도 이해 안되는 부분이 왜 float, int 부분들을 정의해주는 것이었다.

근데 조금 전 곱셈, 나눗셈은 알고리즘에 의해서 시행되어진다고 했다.

만약 수가 float 이라면 알고리즘도 다른 알고리즘을 써야하는 것이고 이러한 연산은 크다고 한다.(알고리즘이 복잡하다는 뜻 같다.)

Integer : fixed point이다. --> 높은 수를 표현하지 못한다.

float : moving point 이다. --> 높은 수를 표현할 수 있다.

여기서 moving point라는 건 소수점이 옮겨다닐 수 있다고 들었습니다.(정수는 항상 고정되어있으니)

 

지수형태로 표현된 수들을 대수비교할 때는 항상 base, exponent 부분을 둘 다 비교한다

그러나 이를 bias representation을 이용하면 두가지 과정 필요없이 바로 비교가 가능하다.

(이 부분은 그냥 그렇구나! 대수를 비교하는데에도 알고리즘이 필요하구나! 라고 생각하고 넘어갔습니다.)

수를 표현할 때도 다양한 수로 표현이 가능하다. 따라서 한가지로 통일한다. ex) 100 = 1 * 10^2

Double 로 선언한 것과 float으로 선언한 것의 범위 차이가 있다.

 

 

오늘 강의는 산수에 대한 예제들을 위주로 진행이 되었는데요, 컴퓨터가 산수연산을, 알고리즘을 어떻게

진행하는지 정확하게는 모르겠지만, 알고리즘에 따라 float연산과 정수연산이 다르다는 것을 알았고

메모리, 속도에도 차이가 난다는 것을 이제야 알았네요..(그 전까지는 이에 대해 생각이 없었다..)

 

해당 강의는 최린 교수님 강의를 듣고 필기한 것입니다.

https://www.youtube.com/watch?v=aJX8s4pNVhY&list=PLL3t9Nt4Hrfv-6V3ylNL4N90TztqlSJOe&index=12