본문 바로가기

전체 글195

[컴퓨터 구조] 5-3. CISC와 RISC CPU의 언어인 ISA란 무엇인지 이해하고, 현대 CPU의 주요 설계 방식인 CISC와 RISC의 정의와 차이점에 대해 학습합니다. '파이프라이닝 하기 쉬운 명령어'란 무엇일까요? 명령어가 어떻게 생겨야 파이프라인이에 유리할까요?CPU의 언어인 ISA와 각기 다른 성격의 ISA를 기반으로 설계된 CISC와 RISC를 학습해 보겠습니다. 명령어 집합명령어의 세세한 생김새, 명령어로 할 수 있는 연산, 주소 지정 방식 등은 CPU마다 조금씩 차이가 있습니다. CPU가 이해할 수 있는  명령어들의 모음을 명령어 집합 또는 명령어 집합 구조 (이하 ISA)라고 합니다. 즉 CPU마다 ISA가 다를 수 있다는 것입니다. ISA가 같은 CPU끼리는 서로의 명령어를 이해할 수 있지만, ISA가 다르면 서로의 명령어를.. 2024. 5. 2.
[컴퓨터 구조] 5-2 명령어 병렬 처리 기법 혼자 공부하는 컴퓨터 구조 - 강민철 저자 의 내용을 정리한 내용입니다.  : 명령어를 빠르고 효율적으로 처리하기 위해 CPU를 한시도 쉬지 않고 작동시키는 명령어 병렬 처리 기법을 알아봅시다. 빠른 CPU를 만들려면 CPU가 놀지 않고 시간을 알뜰하게 쓰며 작동하게 만드는 것도 중요합니다. 명령어 병렬 처리 기법 명령어를 동시에 처리하여 CPU를 한시도 쉬지 않고 작동시키는 기법대표적인 명령어 병렬 처리 기법으로 명령어 파이프 라이닝, 슈퍼스칼라, 비순차적 명령어 처리 가 있습니다. 명령어 파이프라인하나의 명령어가 처리되는 전체 과정을 비슷한 시간 간격으로 나누어 보아야 합니다. 명령어 처리 과정을 클럭 단위로 나누어 보면 일반적으로 다음과 같이 나눌 수 있습니다. 1. 명령어 인출2. 명령어 해석3... 2024. 5. 2.
[컴퓨터 구조] 빠른 CPU를 위한 설계 기법 이 글은 혼자 공부하는 컴퓨터 구조+운영체제 - 강민철 저자의 책을 정리한 글입니다. 빠른 CPU를 위한 설계 기법클럭과 코어, 스레드라는 개념을 학습하고, 빠른 CPU를 만드는 설계 기법인 멀티 코어와 멀티스레드란 무엇인지 이해합니다.  클럭조금이라도 더 빠른 CPU를 만들려면 어떻게 설계해야 할까요? 1. 컴퓨터 부품들은 '클럭 신호'에 맞춰 일사분란하게 움직인다.2. CPU는 '명령어 사이클'이라는 정해진 흐름에 맞춰 명령어들을 실행한다. 클럭 신호가 빠르게 반복되면 CPU를 비롯한 컴퓨터 부품들은 빠른 박자에 맞춰 움직일 것이다. 즉, 클럭 속도가 높아지면 CPU는 명령어 사이클을 더 빠르게 반복할 것이고, 다른 부품들도 그에 발맞춰 더 빠르게 작동할 것이다. 실제로 클럭 속도가 높은 CPU는 일.. 2024. 5. 1.
[컴퓨터 구조] Chapter 4-1. ALU와 제어장치 시작하기 전에.... CPU는 메모리에 저장된 명령어를 읽어 들이고, 해석하고, 실행하는 장치입니다. 그리고 CPU 내부에는 계산을 담당하는 ALU, 명령어를 읽어 들이고 해석하는 제어장치, 작은 임시 저장 장치인 레지스터라는 구성 요소가 있습니다. ALU와 제어장치가 무엇을 내보내고, 무엇을 받아들이는지를 집중해서 읽어 봅시다! ALU ALU는 계산하는 부품이비낟. 계산을 하기 위해 무엇이 필요할까요? 1+2를 계산할 때 1과 2라는 피연산자와 더하기라는 수행할 연산이 필요하듯 ALU가 계산을 하기 위해서는 피연산자와 수행할 연산이 필요합니다. 그래서 ALU는 레지스터를 통해 피연산자를 받아들이고, 제어장치로부터 수행할 연산을 알려주는 제어 신호를 받아들입니다. ALU가 내보내는 정보를 알아봅시다. 연.. 2024. 4. 22.
[컴퓨터 구조] Chapter 3-2 명령어의 구조 앞서 기계어와 어셈블리어의 형태로 명령어를 접해 봤습니다. 기계어나 어셈블리어를 이루는 하나하나가 명령어라고 했었죠. 하지만 아직 기계어나 어셈블리어를 이루는 각각의 명령어를 자세히 들여다보지는 않았습니다. 자세히 들여다보며 연산 코드, 오퍼랜드, 주소 지정 방식이라는 개념을 학습해 보겠습니다. 연산 코드와 오퍼랜드 명령어는 '무엇을 대상으로, 어떤 작동을 수행하라'는 구조로 되어 있습니다. 즉, 연산 코드와 오퍼랜드로 구성되어 있습니다. 연산 코드 : 명령어가 수행할 연산 오퍼랜드 : 연산에 사용할 데이터 또는 연산에 사용할 데이터가 저장된 위치 연산 코드는 연산자, 오퍼랜드는 피연산자 라고 부릅니다. 연산 코드가 담기는 영역을 연산 코드 필드라고 부르고, 색칠되지 않은 부분, 즉 오퍼랜드가 담기는 영.. 2024. 4. 22.
[Android] 네이버 부스트캠프 웹·모바일과 함께하는 부캠라디오 9기가 달라졌어요 네트워킹 데이 채용 니즈가 있는 기업의 회사의 문화, 개발 문화에 대해 캠퍼 대상으로 Q&A를 받는 시간이 있다. 이력서 -> 교류할 수 있는 기회 O 네카라쿠배 직접 오셔서, 부캠 수료생 기준으로 뽑는 경우가 있었다. 이제 공채를 안할 정도로 부캠 전형이 진행되지 않았었다... 기본기와 문제 해결력 문제 정의 : 현실(대상) -> 문제 도출(관찰, 언어, 공감, 이해, 추상) -> 문제 정의 -> 문제 해결(논리, 분석, 추리, 비판, 윤리, 도덕, 존엄) -> 해결 방법 ​​요약) 문제를 정의하고, 해결하기 위한 방법을 사고해서, 그걸 컴퓨터가 해결할 수 있도록 프로그래밍하는 것까지! 모든 과정이 문제 해결이다~ * 코드를 안짜는 미션도 있다. * 평균 4시간 이내의 시간 투입을 예.. 2024. 4. 22.