관리 메뉴

Jsecurity

어셈블리어의 구조 및 예제 본문

프로그래밍언어/리버싱 입문

어셈블리어의 구조 및 예제

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: 두개의 변수를 선언하고 데이터를 입력 받아서 합을 구하시오






'프로그래밍언어 > 리버싱 입문' 카테고리의 다른 글

어셈블리 산술명령어 (add, sub)  (0) 2019.04.14
어셈블리어의 주소 지정 방식  (0) 2019.03.26
어셈블리언어의 특징  (0) 2019.03.19
시스템의 메모리  (0) 2019.03.12
어셈블리언어 기초  (0) 2019.03.12
Comments