어셈블리 언어(Assembly Language):
컴퓨터 프로그래밍 언어 중에서도 가장 저수준인 언어 중 하나.
특징
C++에서 어셈블리어 사용하기
- 어셈블리어 인라인
(32비트로 빌드. 64비트는 2번 방법으로..)
visual studio에서 간단하게 작성 가능하다.
__asm 의 { } 안에 어셈블리어를 절차적으로 작성하여 실행.
#include <iostream>
int main() {
int a = 5, b = 9, result;
__asm {
// 어셈블리어 코드 작성
mov eax, a
mov ebx, b
add eax, ebx
mov result, eax
}
std::cout << "a + b = " << result << std::endl;
return 0;
}
실행 결과 :

- 어셈블리어 파일
위 방법은 32비트만 가능했지만, 다음은 64비트에서 가능하다.
프로젝스 우클릭 > 빌드 종속성 > 사용자 지정빌드
masm 체크 후 확인.

실행할 cpp 코드
#include <iostream>
extern "C" int sum(); // 외부 어셈블리어 함수 선언
int main() {
int result = sum(); // 어셈블리어 함수 호출
std::cout << "결과: " << result << std::endl;
return 0;
}
외부 asm 파일
.data
a DWORD 2
b DWORD 17
result DWORD 0
.code
sum PROC
mov eax, a
mov ebx, b
add eax, ebx
mov result, eax
ret
sum ENDP
END
실행 결과 :