XMM 레지스터 (XMM Register) 1. 개요 XMM 레지스터는 x86 아키텍처의 프로세서에서 SIMD(Single Instruction, Multiple Data, 단일 명령 다중 데이터) 연산을 수행하기 위해 도입된 128비트 크기의 전용 레지스터이다. 인텔(Intel)이 1999년 펜티엄 III 프로세서와 함께 도입한 SSE(Streaming …
검색 결과
검색어를 입력하세요.
ELR (Exception Link Register) 1. 개요 ELR(Exception Link Register)은 CPU에서 예외(Exception)가 발생했을 때, 예외 처리 완료 후 원래의 실행 지점으로 돌아가기 위해 복귀 주소(Return Address)를 임시로 저장하는 특수 목적 레지스터이다. 컴퓨터 아키텍처에서 예외란 인터럽트(Interrup…
어셈블리 언어 (Assembly Language) 어셈블리 언어는 컴퓨터의 CPU가 직접 이해하는 기계어(Machine Code)와 일대일 대응 관계를 가지는 저수준 프로그래밍 언어이다. 이 언어는 특정 CPU 아키텍처에 종속적이라는 핵심적인 특성을 가진다. 1. 개요 어셈블리 언어는 0과 1로 이루어진 이진수 형태의 기계어를 인간이 읽을 수 있는 문자(니…
기계어 (Machine Code) 1. 개요 기계어는 컴퓨터의 중앙 처리 장치(CPU)가 직접 해석하고 실행할 수 있는 유일한 저급 언어로, 0과 1의 이진수(Binary) 형태로 구성된 명령어들의 집합이다. 모든 소프트웨어는 최종적으로 기계어로 변환되어야만 하드웨어 수준에서 전기적 신호로 처리될 수 있으며, 이는 컴퓨터 시스템의 가장 최하단 계층에 위치하…
AVR (8-bit RISC Microcontroller) 1. 개요 AVR은 Atmel(현재 Microchip Technology에 인수됨)에서 개발한 하버드 구조 기반의 8비트 RISC(Reduced Instruction Set Computer) 마이크로컨트롤러(MCU) 아키텍처이다. AVR은 효율적인 명령어 세트와 빠른 실행 속도를 제공하며, 특히 플…
SREG (Status Register) 0. 주요 용어 정의 (Glossary) 본 문서에서 사용하는 핵심 용어의 정의는 다음과 같습니다. SREG (Status Register): CPU의 현재 상태와 연산 결과 특성을 저장하는 특수 목적 레지스터. ALU (Arithmetic Logic Unit): 산술 논리 연산을 수행하는 CPU의 핵심 장치. Fl…
128비트 레지스터 128비트 레지스터(128-bit register)는 컴퓨터 아키텍처에서 128비트(16바이트)의 데이터를 한 번에 저장하고 처리할 수 있는 하드웨어 수준의 데이터 저장소입니다. 일반적으로 64비트 프로세서의 확장된 데이터 경로와 연산 능력을 제공하며, 특히 SIMD(Single Instruction, Multiple Data) 명령어를…
64비트 모드 개요 64비트 모드(64-bit mode)는 컴퓨터의 중앙처리장치(CPU)가 64비트 데이터를 처리하고, 64비트 가상 주소 공간을 사용할 수 있도록 설계된 실행 모드를 의미합니다. 이 모드는 현대의 대부분의 고성능 컴퓨팅 시스템에서 표준으로 사용되며, 이전의 32비트 모드에 비해 훨씬 더 큰 메모리 주소 공간과 향상된 성능을 제공합니다. 6…
SIMD 개요 SIMD(Single Instruction, Multiple Data)는 병렬 처리 기술의 한 형태로, 하나의 명령어를 동시에 여러 개의 데이터에 적용하는 아키텍처를 의미합니다. 이 기술은 멀티미디어 처리, 과학 계산, 머신러닝 등 대량의 데이터를 효율적으로 처리해야 하는 분야에서 매우 중요한 역할을 합니다. SIMD는 프로세서의 벡터 처리 …
레지스터 개요 레지스터(Register)는 컴퓨터의 중앙처리장치(CPU) 내부에 위치한 매우 빠른 소용량의 기억 장치로, 프로세서가 명령어를 실행하는 동안 데이터를 일시적으로 저장하고 조작하는 데 사용된다. 레지스터는 컴퓨터 아키텍처에서 가장 빠른 수준의 메모리 계층(Memory Hierarchy)에 속하며, 캐시 메모리보다도 접근 속도가 빠르다. CPU가…
x87 FPU x87 FPU(Floating- Unit)는 x86 아처 기반의이크로프로서에서 부동수점 연산 수행하기 위해 설계 전용 하드웨어 계 장치이다. x86 프로서는 정수산만을 지원으며, 부동소점 연산은프트웨어 에뮬레이션을 통해 처리되었다. 그러나 성능 요구 높아짐에 따라 수학 연산 가속화하기 위한용 하드웨어인 x87 FPU가 개발되어86 시스템의 성…
Carry 플래그Carry 플그(Carry Flag 줄여서 CF)는 컴퓨터의 래그 레지스터(Flag Register에 포함된 중요한 상태 플래그 중 하나로, 주로 산술 연산의 오버플로우Overflow) 또는 리 올림(Carry) 여부를 나타냅. 이 플래그는로 CPU의 산술논리장(ALU)에서되는 연산의에 따라 설정되며, 덧셈(Addition)과 뺄셈(Subt…
NEON 레지스터 NEON 레지스터는 ARM 아키텍에서 제공하는 고성능 SIMDingle Instruction, Multiple Data) 확장능의 핵심 구성 요소, 멀티미어 처리, 신호 처리 머신 러닝 등 데이터 병렬 요구하는 작업을 효율적으로 수행할 수 있도록 설계되었습니다. NE 기술은 ARMv7-A 및v8-A 아키텍처 이상에서되며, 특히 모바 기기와…
PSTATE PSTATE는 ARM 아키텍처에서 프로세서의 현재 상태(Processor State)를 제어하는 특수 목적 레지스터로, 주로 AArch64(64비트 실행 상태) 아키텍처에서 사용된다. 이 레지스터는 프로세서의 동작 모드, 인터럽트 허용 상태, 예외 레벨(EL), 정밀도 제어 등 다양한 실행 환경을 동적으로 제어하는 데 핵심적인 역할을 한다. 운…
레지스터 스파일링 개요 레스터 스파일링(Registerilling)은 컴일러 최적화정에서 발생하는 중요한 현상 중로, 프로그램에서 사용하는 변수의 수 프로세서의 물리적 레지스터 수를 초과할 때 발생한다. 이 경우 컴파일러는 일부 변수를 메모리(스택)로 내려보내야 하며, 이를 통해 레지스터 자원을 효율적으로 관리한다. 이 과정은 성능에 직접적인 영향을 미치므…
타겟 코드 생성 겟 코드 생성(Target Code Generation)은 컴파일러 핵심 단계 중 하나로, 소스 코드를 특정 하웨어 아키텍 또는 가상 머신에서 실행 가능한 기계어 코드 또는 저수준 코드로 변환하는 과정을 의미합니다. 이 단계는 일반적으로 중간 코드(Intermediate Code)를 입력으로 받아, 대상 플랫폼(타겟)에 맞는 최적화된 실행 …
SSE2 SSE2(Streaming SIMD Extensions 2)는 인텔이 2001년에 펜티엄 4 프로세서와 함께 도입한 SIMDingle Instruction, Multiple Data)령어 집합의 확장판입니다. SSE2는 이전의 SSE(SSE1)를 보완하고, MMX 및 x87 부동소수점 연산의 많은 제한을 극복하기 위해 설계되었으며, 특히 멀티미디어…
레지스터 할 개요 지스터 할당(Register Allocation)은 컴파일러가 프로그램의 변수를 하드웨어의 제한된 수의 CPU 레지스터(Register)에 효율적으로 매핑하는 과정을 의미합니다. CPU 레지스터는 메모리보다 훨씬 빠른 접근 속도를 제공하므로, 변수를 레지스터에 저장하면 프로그램의 실행 속도가 크게 향상됩니다. 그러나 레지스터의 수는 매우 …