한땀한땀 정성들인 코딩

기본 어셈블리 명령어 본문

메모

기본 어셈블리 명령어

romance penguin 2017. 1. 4. 16:32
반응형

어셈블리어 문법은 intel방식, AT&T 방식으로 나뉜다.

intel방식이 직관적으로 이해가 편한다.


데이터 이동

mov dest, src #dest로 src 이동

lea dest,src #dest로 src의 주소가 이동

push src #스택에 src 추가 ESP가 1증가

pop dest #스택에서 dest 추출 ESP 1감소



산술 연산

add dest,src #dest에 src+

sub dest,src #dest에 src-

inc op #op에 +1

dec op #op에 -1

cmp op1,op2 #op1-op2


논리 연산

neg op #2의 보수

not op #비트 반전


and dest,src #

or dest,src #

xor dest,src #

#and, or, xor 논리 연산자 1,1->1 이런거


shl #비트의 left 이동

shr #비트의 rigth 이동


흐름 제어

call proc #proc 함수 호출

ret #함수 호출 복귀

jmp dest #dest로 점프

jle# ??


기타

nop # 아무것도 안함

int #프로그램 중지 인터럽트 처리 루틴으로 이동


인터럽트란? 중단,새치기 - 프로그램 실챙중 예외상황이 발생하여 처리가 필요할 경우 알려주는 신호

인터럽트 처리 루틴이란?( 인터럽트 핸들러 ) - 인터럽트에 대응하여 특정기능을 처리하는

기계어 코드 루틴

루티인란? -  소프트 웨어에서 특정동장을 수행하는 일정코드 부분( 함수,서브루틴,메소드,프로시저 )

반응형

'메모' 카테고리의 다른 글

실습 : 세그먼트 구조 이해하기  (0) 2017.01.04
메모리의 세그먼트 구조  (0) 2017.01.04
인텔 32bit x86 cpu 레지스터의 이해  (0) 2017.01.04
쉘코드의 정의  (0) 2017.01.04
[크롤링] apach nutch  (0) 2017.01.03