A-Dyu의 개발 일기장

[어셈블리] 1.윈도우 개발 환경 셋팅 본문

어셈블리

[어셈블리] 1.윈도우 개발 환경 셋팅

ADyu 2025. 3. 20. 00:42

어셈블리는 기계어랑 1대1 대응되는 저급 프로그래밍 언어다.

어셈블리를 개발할 때 예전에 리눅스(우분투)+vi에디터를 사용했었다. (진짜 살짝 찍먹)

하지만 윈도우에서 작동되게 하고 WinAPI를 어셈블리에서 사용하고 싶어 윈도우에서도 어셈블리를 개발하기 시작했다.

 

1.nasm 다운로드

어셈블리를 기계어로 바꿀려면 당연히 어셈블러가 필요하다.

필자는 nasm을 사용했으며, 윈도우 64비트이기 때문에 win64버전을 사용한다.

https://www.nasm.us/pub/nasm/releasebuilds/2.16.03/win64/

 

Index of /pub/nasm/releasebuilds/2.16.03/win64

 

www.nasm.us

또는 윈도우 11을 사용한다면 winget을 사용해서 다운받을 수도 있다.

winget install --id=NASM.NASM

그런 다음 path를 설정해야 하는데 만약 포터블이라면 다운받은 exe의 파일, 인스톨러면 인스톨할때 설정한 경로.

winget이면 %USERPROFILE%\AppData\Local\bin\NASM경로를 추가하면 된다.

2.link.exe 다운로드

그런 다음 만든 object파일을 링킹할 link.exe를 다운받을 건데, 우리는 winapi도 같이 사용할 것이므로 visual studio의 c++을 이용한 데스크탑 개발을 다운받겠다.

https://visualstudio.microsoft.com/ko/vs/

 

Visual Studio 2022 | 무료 다운로드

Visual Studio에서 코드 완성, 디버깅, 테스트, Git 관리, 클라우드 배포를 사용하여 코드를 작성합니다. 지금 무료로 커뮤니티를 다운로드하세요.

visualstudio.microsoft.com

Community버전을 다운받고 실행한 후 "C++을 이용한 데스크탑 프로젝트"를 다운받으면 된다.

그런 후 link.exe의 경로를 path에 추가해야하는데 일단 필자는

C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\{버전 넘버}\bin\Hostx64\x64

에 다운받아져 있었다, 대부분 똑같겠지만 VS의 버전에 따라 달라질 수도 있으니 

C:\Program Files\Microsoft Visual Studio\2022\Community에서 탐색하거나 비스무리한 거 찾아서 정확한 경로를 저장하길 바란다.

3.vim 다운로드

이제 환경 셋팅이 다 끝났으니 에디터로 넘어가보자, 필자는 vi를 쓰던 경험이 있기 때문에 윈도우에서 사용 가능한 vim에디터를 사용하겠다.

https://www.vim.org/download.php#pc

 

download : vim online

Downloading Vim Vim is available for many different systems and there are several versions. This page will help you decide what to download. Most popular: Details and options for: Mirrors Alternative sites to download Vim files from. Sources Build Vim your

www.vim.org

1과 마찬가지로 인스톨러로 받았다면 지정한 경로, 포터블(zip)으로 받았다면 압축해제한 경로로 path를 추가한다.

 

4.테스트

이제 모든 툴들이 잘 설정되었는지 테스트한다.

먼저 nasm을 cmd에 입력하면

이런 창이 나오는 게 정상이다. 만약 이 텍스트가 아닌

이렇게 not found가 뜨면 path를 다시 한번 확인해보고 그래도 안되면 재부팅하자.

그런 다음 link를 치면

뭐가 많이 나오는데 잘 작동한거다. 위 상황과 같은 상황이 뜬다면 똑같이 path를 다시 한번 확인해보고 그래도 안되면 재부팅하자.

마지막으로 vim을 치면

이런식으로 vim에디터가 실행된다.

사용법은 나중에 익히고, :(콜론)을 누른 후 q를 치고 엔터를 누르면 나갈 수 있다.

 

이렇게 윈도우에서 어셈블리를 개발하기 위한 개발 환경 셋팅을 끝냈다. 다음 포스트에는 Hello World와 nasm어셈블리의 기본적인 문법을 알아보겠다.