Study/CS 7

내가 보려고 만든 CS지식) 빅엔디안 vs 리틀엔디안

간단히 말하자면, 둘 다 장단점이 있는 바이트오더 방식입니다. 리틀 엔디안 빅 엔디안 대표 회사 Intel IBM 형 변환 빠름 느림 숫자 비교 느림 빠름 디버깅 어려움 쉬움 캐리 값 처리 쉬움 어려움 네트워크 바이트오더 X O * 느림, 빠름, 어려움, 쉬움 등 은 각 방식의 상대적인 값입니다. 밑의 글이 너무 잘 써져 있어, 도움을 많이 받았습니다. 감사합니다. jhnyang.tistory.com/226 [endian 2탄]리틀엔디안 vs 빅엔디안, 각 엔디안방식의 장단점, NBO(network byte order), CPU별 엔디안 차이 안녕하세요! 드디어 오랜만에 찾아온 엔디안 방식 2탄입니다. 저번시간에는 엔디안의 개념적인 부분을 다뤘었는데요. - 바이트 오더 vs 비트 오더 - 빅 엔디안 방식..

Study/CS 2020.10.25

내가 보려고 만든 CS지식) 상속의 이유

상속을 왜 할까요? 간결하게 나타내자면, 1. 확장성 용이 2. 코드 간결화 3. 모듈화를 통한 코드 재사용성 증가 4. 유지보수 용이 -> 이로써 개발시간이 단축된다는 효과가 있습니다. 평소 연습하는 것처럼 작은 코드들은 별로 필요없지만, 현업에 가면 상속에 대한 지식이 없다면 정말 힘들거라 생각해요.. ㅎ jhnyang.tistory.com/73 [C++, java 언어공통]상속을 언제, 왜 쓸까?(inheritance, Is-A) [C언어, C++언어 완전 정복! 강의 목차 링크] 상황으로 상속 한번에 이해하기 자 우리가 메이플스토리 게임을 만들거예요 아주 대강~~~ 으로요 일단 메이플스토리 캐릭터들을 만들어봅시다. 음 마 jhnyang.tistory.com Category Photo by Clém..

Study/CS 2020.10.23

내가 보려고 만든 CS지식) 오버라이딩 vs 오버로딩

말의 의미를 잘 생각해보자! 오버라이딩 덮어쓴다는 얘기다. 상위 클래스의 함수를 하위 클래스 함수로 덮어서 하위 클래스의 객체가 같은 이름의 함수를 호출하면 하위클래스의 함수가 호출된다. C 지원 X 오버로딩 더 적재한다는 얘기다. 같은 이름의 메서드 여러개가 있지만 매개변수의 유형이나 개수가 다르게 만들어서 새로운 함수로 거듭나게 만든다. C, Python 지원 X 여담으로 사실 파이썬에서는 필요하지가 않다. 어짜피 한 함수로 오버로딩처럼 다 되니까. 밑의 글이 이해되게 잘 써져있다. 다만 마지막 예제가 틀렸으니 주의바람! private.tistory.com/25 오버로딩과 오버라이딩 차이와 예제 자바에서 다형성을 지원하는 방법으로 메서드 오버로딩과 오버라이딩이 있습니다. 오버로딩(Overloading..

Study/CS 2020.10.23

내가 보려고 만든 CS지식) 스레드 풀

스레드 풀이란 어플리케이션에서 코드 실행을 하여 작업태스크 큐에 전달하여 순서대로 스레드에 넣어 작업해서 결과값을 어플리케이션에 보낸다. 콜백방식과 블로킹 방식이 있으며, 값을 전달하는 callable과 작업만 하는 runnable이 있다. 스레드의 생성은 최대 스레드 갯수를 초과하지 않는다. 초기 스레드, 코어 스레드, 최대 스레드가 있는데, 스레드 풀이 생성 될 때 생기는 스레드의 갯수를 초기 스레드라고 하고 최소 단위로 유지되는 스레드의 갯수를 코어 스레드, 최대 스레드는 스레드가 만들어질 수 있는 최대 스레드이다. 밑의 그림을 보면 이해하기 쉽다. 이 밑의 글은.. 너무 잘 정리해서 감동 받았던 글!!! 동영상도 보고 글도 보고 많이 찾아봤지만 이 글이 베스트인 것 같다. m.blog.naver...

Study/CS 2020.10.23

내가 보려고 만든 CS지식) POST와 GET의 차이점

HTTP 구조를 이해해야 된다. HTTP 구조를 보면 Header와 Body로 나뉘는 것을 볼 수 있는데, Body에서 POST 메소드를 사용해서 받아오는 데이터를 전달하고, Header에서 GET 메소드를 사용해서 받아오는 데이터를 전달한다. 밑의 주소로 들어가서 정리한 것을 보면 한 눈에 이해된다. 제일 중요한 점은!! GET은 조회를 위해 만들어져서 쿼리스트링으로 전달된다는 점과 POST는 수정, 생성, 삭제 등을 위해 만들어져서 바디로 전달된다는 점이다. 두 번째는 GET은 여러번을 실행시켜도 똑같은 데이터를 받아야 하고, POST는 다르다는 점! 잊지말자~!! 이 메소드를 좀 더 알려면 구글의 엑셀레이터 사건을 찾아보면서 이해하면 좀 더 빠르게 이해할 수 있다. hongsii.github.io/..

Study/CS 2020.10.21

해저드(Hazard)란 무엇일까?

파이프라이닝에서 나타나는 문제점을 뜻한다. 파이프라이닝이란? - 멀티 프로세서의 기본적인 능력(멀티 프로세서를 알면 이해 가능하다.) 클릭 해저드는 크게 3가지 종류로 나누는데, 1. 구조적 해저드 2. 데이터 해저드 3. 컨트롤 해저드 로 나뉜다. 순서대로 알아 보도록 하자. 1. 구조적 해저드 구조적 해저드는 거의 우리가 손댈 수 없는 문제이다. 자원이 한정되어 있는데, 우리가 자원을 새롭게 자원 복제하던지, 새로 끼울 수 없으니까 말이다. '슈퍼스케일러'라면 말이 다르다. - 슈퍼스케일러 : 많은 패치 유닛을 가짐(슈퍼 컴퓨터라고 생각) 그래서 자원을 다 쓸 때까지 기다리는 'stall', 'bubble'이라는 delay instruction을 사용한다. 2. 데이터 해저드 우리가 해결할 수 있는 ..

Study/CS 2019.12.20

싱글 프로세서 v 멀티 프로세서

Single cycle - processor 1 clock cycle에 한 명령어가 진행된다. 그래서 CPI가 1이다. 원래 명령어마다 clock period가 다른데, 싱글 프로세서는 longest delay가 clock period를 결정하게 된다.(제일 시간이 많이 걸리는 명령어에 시간을 맞춘다.) 즉, 효율성이 없다. 로직과 클럭은 심플하다. Multi cycle - processor 말 그대로 싱글 사이클을 쪼갠거다. - 그 대신 복잡하고, 레지스터가 더 필요하다. CPI는 커지지만, Clock Time 자체는 줄고, longest delay 기준이 아니기 때문에 실질적인 excution time을 줄일 수 있다. 즉, 처리율이 극대화된다. 간단한 명령어는 빠르게, 복잡한 명령어는 느리게 - 명..

Study/CS 2019.12.20
반응형