12.07.2013 Aufrufe

MASM 어셈블리 언어의 기초와 응용 [muckmock].pdf

MASM 어셈블리 언어의 기초와 응용 [muckmock].pdf

MASM 어셈블리 언어의 기초와 응용 [muckmock].pdf

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

○디렉티브(directive)<br />

⋅프로그램의<br />

소스 코드를 어셈블할 때 어셈블러가 인식하고 활용하는 명령어<br />

⋅논리<br />

세그먼트를 정의하거나 메모리 모델을 선택하거나 프로시저 만들거나 변수정의시 사용<br />

⋅디렉티브는<br />

어셈블러 구문으로서 인텔 명령어 집합과는 관계가 없다.<br />

.data → 데이터 영역 , name PROC → 프로시저의 시작<br />

○명령어(Instruction)<br />

⋅프로그램이<br />

메모리에 탑재되어 실행될 때 프로세서에 의해 실행되는 문장<br />

Label: Mnemonic Operand(s) ;Comment<br />

⋅Label<br />

- 명령어 or 데이터의 위치를 표시하는 하나의 식별자<br />

target:<br />

mov ax, bx<br />

⋅Mnemonic<br />

-<br />

mov, add, sub...<br />

명령어에 의하여 수행되는 동작을 식별하기 위한 단어<br />

⋅Operand<br />

- 명령어는 0~3개까지 Operand 를 갖는데 , 이는 레지스터 , 메모리 , 피연산자 , 상수<br />

or 입출력 포트가 될 수 있다 .<br />

inc ax, mov count, bx<br />

⋅Comment<br />

-<br />

COMMENT &<br />

&<br />

프로그램을 작성한 사람이 프로그램의 소스코드에 대한 설명<br />

This line is a comment.<br />

1-2. 프로그램의 어셈블링 , 링킹 , 그리고 실행<br />

○어셈블<br />

-링크 -실행<br />

주기<br />

⋅Step1<br />

→프로그래머는<br />

문자 편집기를 사용하여 소스파일이라고 하는 아스키 문자 파일 생성<br />

⋅Step2<br />

→어셈블러는<br />

소스 파일을 읽어서 기계어 변환인 오브젝트 파일을 생성 , 오류시 1단계로<br />

이동<br />

⋅Step3<br />

→링커는<br />

오브젝트 파일을 읽고 링크 라이브러리 안에 있는 프로시저를 호출하는지 점검 후,<br />

링크 라이브러리에서 필요한 프로시저를 복사해서 오브젝트 파일과 합치고 실행 파일 생성<br />

- 4 -

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!