본문 바로가기

728x90

CS/컴퓨터 구조

(10)
[컴퓨터 구조] 데이터 부동 소수점 소수란?소수(decimal)는 1보다 큰 정수 중에서 1과 자기 자신만을 약수로 가지는 자연수를 뜻합니다. 예를 들어, 2, 3, 5, 7과 같은 숫자가 소수입니다.프로그래밍에서 소수 연산을 다룰 때 일반적인 개념과 달리 컴퓨터의 소수점 표현 방식의 한계로 인해 일부 오차가 발생할 수 있습니다. 소수 표현일부 실수 계산에서 우리가 흔히 예상하는 결과와 컴퓨터가 계산하는 결과가 달라질 수 있습니다. 예를 들어 0.1 + 0.2의 계산 결과는 이론적으로 0.3이지만, 컴퓨터는 이 결과를 정확히 표현하지 못할 때가 있습니다:System.out.println(0.1 + 0.2 == 0.3); // 결과는 false이와 같은 현상은 컴퓨터가 소수를 표현하는 방식인 "부동 소수점" 표현 방식의 한계로 인해 발생합니..
[컴퓨터 구조] CPU 속도에 관여하는 것 CPU의 속도에 영향을 미치는 요소CPU는 명령어를 처리하는 부품이며, 명령어 처리 속도가 빠를수록 컴퓨터의 성능이 향상됩니다. CPU의 명령어 처리 속도를 빠르게 할 수 있는 방법은 다음과 같습니다. 1. 클럭 (Clock)클럭의 정의: 컴퓨터 부품은 클럭이라는 신호에 맞춰 작동합니다. 클럭 신호는 컴퓨터의 동작을 제어하는 타이밍 신호로, 신호가 올 때마다 CPU가 작업을 시작합니다.클럭 속도: 클럭 속도는 Hz(헤르츠)로 측정되며, 1초에 n번 신호를 반복한다면 nHz입니다. 예를 들어, 1초에 10번 신호가 오면 10Hz입니다. 일반적인 CPU의 속도는 다음과 같습니다:저가형 CPU: 약 2.5GHz ~ 3.5GHz중급형 CPU: 약 3.5GHz ~ 4.5GHz고급형 CPU: 약 4.0GHz ~ 5..
[컴퓨터 구조] 명령어 사이클과 인터럽트 명령어 사이클과 인터럽트CPU가 하나의 명령어를 처리하는 과정은 일정한 흐름을 가지고 있으며, 이를 반복하여 명령어를 처리합니다. 이 정형화된 흐름을 명령어 사이클이라고 합니다.명령어 사이클CPU는 명령어들을 하나씩 실행합니다. 이때 프로그램 속 각각의 명령어들은 일정한 주기로 반복되며 실행되는데, 이 주기를 명령어 사이클이라고 합니다.명령어 사이클 과정인출 사이클 (Fetch Cycle)CPU가 메모리에 신호를 보내고 메모리에서 값을 가져오는 과정입니다.실행 사이클 (Execution Cycle)CPU가 인출한 명령어를 실행합니다. 제어장치가 명령어를 해석하고, ALU(산술 논리 장치)로 연산을 수행하며, 제어 신호를 발생시키는 과정입니다.프로그램 속 명령어들은 일반적으로 인출과 실행 사이클을 반복하여..
[컴퓨터 구조] 레지스터 종류와 특징 레지스터란?레지스터는 CPU의 임시 저장 장치입니다. 데이터와 명령어를 실행 전후로 레지스터에 저장하며 사용합니다. 레지스터의 역할레지스터는 다양한 종류가 있으며 각기 다른 역할과 특징을 가지고 있습니다. 이번에는 공통적으로 CPU에서 사용되는 8개의 레지스터를 설명하겠습니다. 레지스터의 종류 8가지프로그램 카운터 (PC)명령어 레지스터 (IR)메모리 주소 레지스터 (MAR)메모리 버퍼 레지스터 (MBR)플래그 레지스터 (FR)범용 레지스터 (GPR)스택 포인터 (SP)베이스 레지스터 (BR)프로그램 카운터 (Program Counter, PC)Program Counter는 다음에 실행할 명령어의 메모리 주소를 가지고 있는 레지스터입니다. 현재 실행 중인 명령어의 메모리 주소가 4번지라면, 프로그램 카운..
[컴퓨터 구조] CPU 제어장치 (CU) 제어장치 (Control Unit)제어장치는 컴퓨터의 다양한 부품들을 관리하고 작동시키는 전기 신호,즉 제어 신호를 생성하고 명령어를 해석하는 중요한 부품입니다.CPU의 부품 중 가장 정교하게 설계된 부분이 바로 제어장치입니다. 제조사마다 구현 방식이나 명령어를 해석하고 제어 신호를 주고받는 방식이 조금씩 다르지만, 여기서는 일반적인 제어장치의 작동 원리에 대해 설명하겠습니다.제어장치의 작동 과정클럭 신호 수신제어장치는 클럭 신호를 받아들입니다.클럭(clock)이란 컴퓨터의 모든 부품이 동작할 수 있도록 시간 단위를 제공하는 신호입니다.클럭 주기에 맞춰 데이터가 이동하거나 연산이 수행되고, 명령어가 읽혀집니다.하지만 모든 부품이 동일한 클럭 주기마다 작동하는 것은 아닙니다. 각 부품은 클럭 신호에 맞춰 ..
[컴퓨터 구조] CPU의 ALU ALU란?ALU는 Arithmetic Logic Unit의 약자로, 산술 논리 연산 장치입니다. 즉, ALU는 계산을 수행하는 부품입니다.계산을 위해 필요한 요소계산을 하기 위해서는 연산자와 피연산자가 필요합니다. 예를 들어, 1과 2를 더하는 계산을 해봅시다.피연산자: 1, 2연산자: ADD (더하기)피연산자와 연산자는 어디에서 가져올까요?이들은 메모리에서 CPU가 명령어를 읽어올 때 가져오게 됩니다.ALU 작동 과정명령어 가져오기: CPU가 메모리에서 1번지에 있는 명령어를 가져옵니다.명령어 저장: 가져온 명령어를 레지스터에 저장합니다.명령어 해독: 제어장치(CU)가 명령어를 해독합니다. 피연산자가 주소로 지정되어 있으면, 해당 주소에 있는 값을 가져와 다른 레지스터에 저장합니다. 이때 제어장치는 연..
[컴퓨터 구조] 컴퓨터 4가지 핵심부품(CPU) 컴퓨터에는 4가지 핵심 부품이 있습니다: 중앙 처리 장치(CPU: Central Processing Unit)컴퓨터의 두뇌이며, 연산을 수행하는 역할을 합니다. 주기억장치(메모리: Main Memory)현재 실행 중인 프로그램이 저장되어 있는 곳입니다. 보조기억장치(Secondary Storage)모든 프로그램을 저장하고 있는 장소입니다. 입출력 장치(I/O Device)마우스, 프린터, 키보드와 같은 장치들입니다.이 장치들은 시스템 버스를 통해 서로 정보를 교환하고 있습니다. CPU란?Central Processing Unit의 약자로 중앙 처리 장치라는 뜻을 가집니다.CPU는 한마디로 요약하면 사람의 뇌와 같은 역할을 하고 있습니다.왜 그런지 한번 알아볼까요?CPU의 역할산술 및 논리 연산 수행: C..
[컴퓨터 구조] 컴퓨터 4가지 핵심 부품(주기억장지) 컴퓨터에는 4가지 핵심 부품이 있습니다: 중앙 처리 장치(CPU: Central Processing Unit)컴퓨터의 두뇌이며, 연산을 수행하는 역할을 합니다. 주기억장치(메모리: Main Memory)현재 실행 중인 프로그램이 저장되어 있는 곳입니다. 보조기억장치(Secondary Storage)모든 프로그램을 저장하고 있는 장소입니다. 입출력 장치(I/O Device)마우스, 프린터, 키보드와 같은 장치들입니다.이 장치들은 시스템 버스를 통해 서로 정보를 교환하고 있습니다.    주기억장치주기억장치는 현재 실행 중인 프로그램의 명령어와 데이터를 저장하는 부품입니다.즉, 프로그램을 실행시키면 주기억장치에 저장되어 있어야 합니다.이때 메모리는 데이터와 명령어를 잘 정리해야 합니다.  만약 그렇지 않다면 ..

728x90