x86-64 Assembly

asmlogo

Assembly는 기계어 명령어를 기반으로 하며, CPU가 직접 이해할 수 있는 언어입니다.
다른 언어에 비해 상대적으로 빠른 성능을 가지며, 하드웨어에 가깝게 동작합니다.
프로그램의 구조가 단순하지만, 다른 프로그래밍 언어에 비해 코드량이 많고 복잡하여 작성 및 유지관리가 매우 까다롭습니다.
C나 C++ 등 다른 언어에 비해 메모리 사용과 직접적인 하드웨어 제어가 가능하기 때문에 주로 시스템 프로그래밍 등의 분야에서 사용될 수 있습니다.
반면에 상위 레벨 언어들에 비해 작성하는 시간 및 코드량이 많기 때문에, 일반적인 소프트웨어 개발에서는 자주 사용되지 않습니다.


해당 그래프는 공식적인 자료가 아닙니다. 단순 참고용으로만 사용해주시길 바랍니다.
정적/동적 타이핑의 경우 음수일 경우 동적 타이핑, 양수일 경우 정적 타이핑을 지원하는 지표로 나타내었습니다.
Assembly가 사용된 소프트웨어:
- 각종 임베디드 소프트웨어
- 아타리 쇼크 이전 대부분의 고전 게임(패밀리 컴퓨터, 네오지오, 메가드라이브, 슈퍼 패미컴 등에서 작동하는 게임)
- 바람의 나라
- Linux와 같은 일부 UNIX 체제의 OS
- WebAssembly

어셈블리 위키피디아로 바로가기

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
section .data
    hello db 'Hello, World!', 0Ah
 
section .text
    global _start
 
_start:
    mov rax, 1              
    mov rdi, 1              
    lea rsi, [rel hello]    
    mov rdx, 14             
    syscall                 
 
    xor rdi, rdi            
    mov rax, 60             
    syscall                 
cs

설명: 위 코드는 Assembly로 작성된 기본 "Hello, World!"를 출력하는 코드입니다.

프로그래밍 언어 추천 테스트로 돌아가기