프로그래밍언어/리버싱 입문
어셈블리어의 구조 및 예제
Great king
2019. 3. 19. 19:48
#어셈블리어의 구조
Intel 문법과 AT&T 문법이 있다. 윈도우에서는 Intel 문법 사용, 리눅스에서는 AT&T 문법 사용
Intel 문법에서는 목적지 (destination)가 먼저 오고 원본(source)이 뒤에 위치 AT&T에서는 반대.
#Intel 문법에서 어셈블리어의 명령 형식
Label 레이블 |
MOV 작동 코드 |
BX 제2피연산자 |
AX 제1피연산자 |
;comment 설명 |
#AT&T 문법에서 어셈블리어의 명령 형식
Label 레이블 | MOV 작동 코드 | %AX 제1피연산자 | %BX 제2피연산자 | ;comment 설명 |
인텔사와 AT&T의 어셈블리언어의 문법은 1피연산자 , 2피연산자의 위치가 반대이다. (유의)
#어셈블리어 데이터 타입
db : 바이트(Byte) : 1바이트(8비트) 데이터 항목
dw : 워드(Word) : 2바이트(16비트) 데이터 항목
dd : 더블워드(Doubleword) : 4바이트(32비트) 데이터 항목
dq : 쿼드워드(Quadword) : 8바이트(64비트) 데이터 항목
#실습예제 1: " Hello, world!!! " 출력하기
#실습예제 2: c = a + 2 * b
#실습예제 3: 두개의 변수를 선언하고 데이터를 입력 받아서 합을 구하시오