본문 바로가기

(구) 자료/면접을 위하여7

[7] C++, JAVA의 차이를 한 눈에 정리. C와 C++은 [1]편에서 정의했으니까 패스하고, 그렇다면 C++과 JAVA의 차이점이 뭔지 정확히 알고가보자. 모든 내용은 [곰150님 블로그]를 참고하여 제가 보기 쉽게 정리해논 것임을 밝힙니다. C++과 JAVA, 무엇이 다른가? 1) 설계 목표JAVA : 설계할 때, 보안과 빠른 이식성에 집중했다.C++ : 속도, C와의 하위 호환성에 집중했다.- C++은 절차지향언어인 C의 효율성 측면을 개선하기 위해 OOP(Object Oriented Programming)을 결합한 것이기 때문.- OOP는 생각보다 완벽하지도 않고, 약점도 많다. 2) 클래스의 차이 JAVA : 기본 단위가 Class로, 거의 완전한 OOP라고 보면 된다.C++ : C언어의 상위 호환이기 때문에 절차지향이 섞여있다. 3) 컴.. 2018. 5. 8.
[6] Memory Mapped IO, I/O Mapped I/O 하반기의 치욕을 씻겠다. CPU와 입출력 기기에 접속하는 방법에는 크게 두 가지가 있다. Memory Mapped I/O와 I/O Mapped I/O. 1. Memory Mapped I/O- 메모리와 I/O가 하나의 연속된 address 영역에 할당된다. 즉, I/O가 차지하는 만큼 메모리 용량은 감소한다. - CPU 입장에서는 메모리와 I/O가 동일한 외부기기로 간주되므로, 이들을 액세스 하기 위해 같은 신호(read, write)를 사용한다.- 소프트웨어적으로도 메모리에대한 액세스 or I/O에 대한 데이터 입출력이 동일한 것으로 간주된다. - Load나 Store 명령에 의해 수행된다.- 대표적인 프로세서로는 ARM, MIPS, PowerPC, M68K가 있다.- 위 방식의 가장 큰 장점은 포트 입.. 2018. 4. 28.
[5] 부동 소수점(floating Point) 오늘은 부동소수점입니다. 왜 갑자기 부동소수점을 하느냐.. 면접 관련해서 질문 나오는 기업이 있었기도 했고, 백준 문제 풀다가도 나왔기 때문이죠. * 이 포스팅의 모든 내용과 그림은 TCPSchool을 참고하여 정리하였습니다. * 컴퓨터에서 실수를 표현하는 방법? - 우리는 숫자쓰다가 중간에 점 하나 찍으면 소수가 되지만, 컴퓨터는 그렇지 않습니다. 0과 1만을 알고 있을 뿐이죠. - 현재 컴퓨터가 소수점을 나타내는 방식은 고정 소수점(Fixed Point) 방식과 부동 소수점(Floating Point)방식이 존재합니다. 1. 고정 소수점(Fixed Point)개념 - 말 그대로, 소수점이 찍힐 위치를 미리 정해놓고 소수를 표현하는 방식입니다. - 보통 실수는 정수 + 소수로 표현합니다. 예시 - 예를.. 2018. 3. 1.
[4] 유사 코드(Pseudo-Code) * 저의 면접을 대비해서 여러 사이트를 참고하여 제가 이해하기 쉽게 정리한 것입니다.* 혹시라도 문제가 된다면 비공개조치 하겠습니다.* 레퍼런스는 항상 표기 하겠습니다. 하반기를 직접 겪어보니, PT면접은 대부분이 손 코딩한 결과를 설명하는 부분이었습니다. 어찌보면 당연하다고 생각합니다. 알고리즘 작성 능력을 보는 것이 가장 좋은 방법일테니까요. 알고리즘을 작성하는 능력도 중요하지만, 그것을 누군가에게 쉽게 설명할 수 있어야 한다고 생각합니다. 누군가에게 쉽게 설명하기 위한 방법은 총 4가지가 있습니다. 1) 일반적인 언어로 기술2) 흐름도(Flow Chart)3) 유사 코드(Pseudo-Code)4) C언어 가장 좋은 방법은 3번과 4번인데, 4번을 더 간단 명료하게 보여주는 방법이 바로 3번 의사 결.. 2017. 12. 27.