본문 바로가기

컴퓨터

08.03.28 어셈블리

www.asmirvine.com 에서 시작에 관한 페이지에가서 필요한 것에 관해서 자세히 알 수 있다


MASMsetup.EXE 설치하려면

cmd에서 파일명 쓰고 /c 쓰고 압축 풀어줌

--> c:\Irvine\>MASMsetup.EXE /c



보호모드는 XP 이상
프로그램이 물리적메모리에 상관없이
4GB까지 쓰는거
원한느 주소에 액세스해서 씀;;

///////////////////////
가상모드(콘솔)
이것도 보호모드로 4GB쓰게 만들어야함;;;;?
/////////////////////////////

리얼모드 는 이하들... 98 95 dos
최대 1MB이상을 못 씀


**지금은 보호모드(protect)를 씀;; 원하는 주소를 액세스해서 사용


레지스터

AX -> EAX

BX -> EBX

CX -> ECX

DX -> EDX

0~ FF FF FF (-> + FF)
-- 여기까지는 계산에 이용되는 Rg
---------
(E)BS
(E)SP
(E)SI
(E)DI

------------------
Flag registers
현 상태를 나타내주는

----------------------
EAX

EBX

ECX

EDX


=----------------

Library exam;; AddSub

TITLE Add and Subtract              (AddSub.asm)

; This program adds and subtracts 32-bit integers.
; Last update: 06/01/2006

INCLUDE Irvine32.inc // #include 에 해당

.code
main PROC // int main에 해당

 mov eax,10000h  ; EAX = 10000h
 add eax,40000h  ; EAX = 50000h // eax = eax + 40000 의미
 sub eax,20000h  ; EAX = 30000h // eax = eax - 20000 의미
 call DumpRegs

 exit
main ENDP
END main