0Pricing
Assembly Language & x86 Low-Level Systems Programming icon

Assembly Language & x86 Low-Level Systems Programming

ASSEMBLYSystemsBackendSecurityBeginner

x86 Assembly 언어의 기초를 익히고 저수준 시스템 프로그래밍에 깊이 있게 들어가 소프트웨어가 하드웨어와 상호작용하는 방식을 이해합니다.

🤖 AI 기반📚 12개 코스👥 100,000명 이상의 학습자⭐ 4.9 평점
코스 개요

x86 Assembly: CPU가 실제로 실행하는 코드를 작성하세요

Assembly 언어는 직접 이진수를 작성하지 않고서도 베어메탈에 가장 가까이 갈 수 있는 방법입니다. 모든 명령어는 CPU 연산에 직접 매핑되며 — 런타임도, 가비지 컬렉터도, 하드웨어가 무엇을 하는지 숨기는 추상화도 없습니다. 이 트랙은 x86 Assembly를 처음부터 커널 수준의 프로그래밍까지 다루며, 컴파일러부터 익스플로잇 개발까지 모든 것을 이해할 수 있는 기초를 제공합니다.

학습 내용

레지스터, 메모리 레이아웃, 데이터 타입부터 시작한 후 기본 명령어와 제어 흐름, 스택 관리, 프로시저 호출 규약으로 나아갑니다. 그 다음으로 Assembly와 C, C++ 코드의 상호운용, 시스템 호출 발급, 인터럽트 및 예외 처리, 부동소수점 유닛과 SIMD 명령어 작업을 다룹니다. 고급 과정에서는 디버깅과 리버스 엔지니어링, 메모리 보호 메커니즘, 가상화, 커널 수준의 드라이버 프로그래밍, 익스플로잇 기법을 포함한 저수준 성능 최적화를 다룹니다.

학습 경로

12개의 과정이 A2부터 C2까지 펼쳐집니다. 무료 입문 과정에서는 x86 문법과 기본 개념을 확립합니다. B1과 B2 과정에서는 실무 핵심인 레지스터, 제어 흐름, 스택, 프로시저를 구축합니다. 그 후 트랙은 C/C++ 상호운용, 시스템 호출, 인터럽트, SIMD, 리버스 엔지니어링을 다루는 5개의 과정으로 C1 깊이로 넘어갑니다. 메모리 보호 및 가상화, 커널 수준의 프로그래밍 및 드라이버에 관한 2개의 C2 과정이 선행되며, 캐시 동작부터 보안 관련 저수준 기법까지 모든 내용을 통합하는 최종 과정인 성능 최적화 및 익스플로잇이 뒤따릅니다.

작동 방식

각 과정은 내장된 코드 에디터에서 실시간 피드백을 받으며 완료하는 짧고 집중된 레슨으로 나뉩니다. 명령어 인코딩이나 설명할 수 없는 segfault에 막힐 때는 AI 튜터를 이용할 수 있습니다.

학습 시작 →

학습 방식

🎯
인터랙티브 레슨
실시간 피드백을 받으며 직접 코딩 연습하기
🤖
AI 튜터
막힐 때마다 AI 튜터에게 즉시 도움받기
💻
내장 에디터
브라우저에서 바로 코드 작성 & 실행하기
🏆
수료증
과정을 완료하면 수료증 취득하기
커리큘럼

12개 코스

Assembly Language & x86 Low-Level Systems Programming 학습 경로의 모든 코스.

01

x86 어셈블리 입문: 기초

A24개 레슨

이 입문 미니 과정에서는 어셈블리 언어와 x86 아키텍처의 기초를 익힙니다. 어셈블리가 무엇인지, 왜 중요한지 이해하고 첫 저수준 프로그램을 작성해 봅니다.

02

x86 레지스터, 메모리 및 데이터 형식

B14개 레슨PRO

레지스터의 작동 방식, 다양한 메모리 주소 지정 모드, 데이터 형식이 최저 수준에서 표현되고 조작되는 방식을 이해하며 x86 어셈블리의 핵심 개념을 깊이 있게 살펴보세요.

03

기본 명령어와 제어 흐름

B14개 레슨PRO

이 미니 과정에서는 데이터 이동, 산술 연산, 논리 연산에 필요한 x86 어셈블리의 핵심 명령어를 다룹니다. 조건부 점프와 반복문 같은 제어 흐름 구조를 구현하는 방법도 배웁니다.

04

프로시저와 스택 관리

B24개 레슨PRO

x86 어셈블리에서 프로시저(함수)가 구현되는 방식을 이해해 보세요. 지역 변수, 매개변수, 반환 주소를 관리하는 호출 스택의 중요한 역할도 함께 다룹니다.

05

어셈블리에서 C/C++와 연동하기

C14개 레슨PRO

이 미니 과정에서는 C/C++와 같은 고수준 언어의 강력함과 어셈블리의 저수준 제어 기능을 결합하는 방법을 가르칩니다. C에서 어셈블리 루틴을 호출하고 그 반대 방향으로 호출하는 방법을 배웁니다.

06

고급 메모리와 시스템 호출

C14개 레슨PRO

메모리 관리 개념을 더 깊이 살펴보고 Linux와 Windows 플랫폼에서 시스템 호출을 사용해 운영 체제와 직접 상호작용하는 방법을 배워 보세요.

07

인터럽트와 예외 처리

C14개 레슨PRO

이 고급 과정에서는 x86 시스템의 핵심 메커니즘인 인터럽트와 예외를 다룹니다. CPU가 외부 이벤트와 오류를 처리하는 방식과 사용자 지정 처리기를 구현하는 방법을 배웁니다.

08

부동 소수점 연산 및 SIMD

C14개 레슨PRO

어셈블리에서 복잡한 수치 계산을 능숙하게 처리해 보세요. 이 미니 과정에서는 부동 소수점 산술을 위한 x87 FPU 프로그래밍을 다루고, 병렬 처리를 위한 SSE/AVX와 같은 단일 명령어 다중 데이터(SIMD) 명령어 집합을 소개합니다.

09

디버깅과 역공학

C14개 레슨PRO

이 과정에서는 어셈블리 코드를 디버깅하고 기본적인 역공학을 수행하는 데 필요한 핵심 기술을 익힙니다. 디버거와 디스어셈블러를 사용해 프로그램 실행을 분석하고 컴파일된 바이너리를 이해하는 방법을 배웁니다.

10

메모리 보호와 가상화

C24개 레슨PRO

페이징과 보호 링을 비롯해 x86 시스템의 가상화와 하이퍼바이저를 뒷받침하는 기본 원리 등 고급 메모리 관리 개념을 살펴보세요.

11

커널 수준 프로그래밍 및 드라이버

C24개 레슨PRO

이 전문가 수준의 미니 과정에서는 커널 공간 프로그래밍의 과제와 기법을 소개합니다. 하드웨어와 직접 상호작용하는 방법과 장치 드라이버 작성의 기초를 배웁니다.

12

성능 최적화 및 취약점 공격

C24개 레슨PRO

어셈블리 수준에서 코드를 최적화하는 기술을 익히고 일반적인 소프트웨어 취약점과 이를 악용하는 기법을 이해해 보세요. 이 과정에서는 성능 조정과 보안 인식을 함께 다룹니다.

자주 묻는 질문

자주 묻는 질문

Assembly Language & x86 Low-Level Systems Programming 강의는 무료인가요?

네, Assembly Language & x86 Low-Level Systems Programming 강의를 무료로 시작하고 인터랙티브 레슨을 모두 무료로 완료할 수 있습니다. 선택적 PRO 구독을 통해 고급 AI 도구와 공유 가능한 수료증을 잠금 해제할 수 있습니다.

ASSEMBLY을(를) 배우기 위해 사전 경험이 필요한가요?

아니요. 강의는 기초부터 시작하여 점차 더 심화된 주제로 나아가므로 ASSEMBLY 경험이 없어도 시작할 수 있습니다.

CoddyKit에서 ASSEMBLY은(는) 어떻게 배우나요?

직접 해보면서 배웁니다. 짧은 인터랙티브 레슨은 명확한 설명과 실시간으로 실행되는 실습 코딩 연습을 함께 제공하며, 24시간 AI 튜터가 막힐 때마다 맞춤형 도움을 줍니다.

Assembly Language & x86 Low-Level Systems Programming을(를) 완료하면 수료증을 받나요?

네, PRO 학습자는 시험을 응시하고 Assembly Language & x86 Low-Level Systems Programming 강의의 검증 코드가 포함된 공유 가능한 수료증을 취득할 수 있습니다.

휴대폰에서 ASSEMBLY을(를) 배울 수 있나요?

네, CoddyKit은 웹과 iOS, Android 네이티브 앱으로 이용 가능하므로 어느 기기에서나 ASSEMBLY을(를) 배우고 진행 상황이 모든 기기에서 동기화됩니다.

Assembly Language & x86 Low-Level Systems Programming을(를) 지금 시작하기

AI 기반 강의로 프로그래밍을 배우는 수천 명의 학습자들과 함께하세요.

무료로 시작하기 →모든 강의 보기