본문 바로가기

반응형
SMALL

programming/assembly

(5)
어셈블리언어 기초 파해처 보기 - 5 본 게시물은 책 게임처럼 쉽고 재미있게 배우는 어셈블리 언어 튜토리얼 - 북스 홀릭 - 책을 참고하였습니다. 두개 이상의 모듈 사용 프로시저 서비스를 제공하는 모듈 프로시저를 코딩한 후 모듈 제일 위쫏에 global 사용후 외부 사용을 위한 public를 선언 프로시저 서비스를 사용하려는 모듈 모듈 제일 위쪽에 extern 사용 사용하고자 하는 프로시저의 이름이 외부 모듈 어딘가에 존재하는 선언 KERNEL의 ㅜㅁㄹ리적 구성 및 함수의 위치 KERNEL32.DLL - 메모리 관리, 입출력, 프로세스 관리등이 구현되어있다. GDI32.DLL - 그래픽 장치 인터페이스, 함수 관리 등이 구현되어 있다. USER32.DLL - 윈도우 구성요소(창 , 메뉴등) 구현 및 관리 등이 구현되어 있다. API 함수 호..
어셈블리언어 기초 파해처 보기 - 4 본 게시물은 책 게임처럼 쉽고 재미있게 배우는 어셈블리 언어 튜토리얼 - 북스 홀릭 - 책을 참고하였습니다.\ IF문 구현해보기 1. CMP, JMP 계열 명령어 이해하기 CMP dst, src dst를 중심으로 src와 비교 연산 수행 연산 결과는 플래그 레지스터에 저장 결과는 jmp명령문과 연결되어 사용 JMP 계열 명령어 (플래그 레지스터의 플래그를 보고수행) JE /JNE label : 같거나 / 같지 않다면 label로 Jump (dst == src , dst != src) JG/JGE label : 크거나 / 크거나 같으면 label로 Jump (dst > src, dst >=src ) JL / JLE label : 작거나 /작거나 같으면 label로 Jump (dst < src, dst LO..
어셈블리언어 기초 파해처 보기 - 3 본 게시물은 책 게임처럼 쉽고 재미있게 배우는 어셈블리 언어 튜토리얼 - 북스 홀릭 - 책을 참고하였습니다. LINE 1 : OS에 무관한 입출력 매크로 함수를 지원하기 위한 SASM 제공 메타 함수. LINE 3 : text section으로 실행되는 코드가 기술되어 잇음 . [ text section 영역 LINE 3~ LINE 8 ]. LINE 4 : 프로그램이 시작되는 주소를 정의. 프로그램 시작시 LINE5 부터 시작된다 . LINE 9 10 : 프로그램 종료 OS로 제어를 돌려줌. --- Section 은 공통 블록[특정 데이터 혹은 명령어를 모아놓는곳 ]으로 생각해라. 에셈블리 언어에서 메모리를 사용하기 메모리를 사용하기 위해 결정해야 하는 두가지 1. 메모리의 크기 결정 2. 메모리의 위치..
어셈블리언어 기초 파해처 보기 - 2 본 게시물은 책 게임처럼 쉽고 재미있게 배우는 어셈블리 언어 튜토리얼 - 북스 홀릭 - 책을 참고하였습니다. 데이터 단위 bit. 데이터의 가장 작은 단위 0과 1 두가지 2진수만 표현할 수 있다. byte : 8개의 비트를 모아서 하나의 바이트라 한다. 10진수 0~255, 16진수 0XFF까지 표현가능. -> 레지스터에서 8BIT에 대응되는 레지스터는 AL, AH, BL, BH, CL,CH, DL,DH가 있다. [C언어에서 CHAR , BOOL형 데이터 타입이라고 보자 ] word : 2개의 바이트를 하나로 표현하면 워드이다. [하나의 작업 단위 ] 10진수 - 0~65535, 16진수 0xFFFF, 16비트 레지스터는 AX, BX, CX, DX, SI DI BP SP IP가 있다. DWORD (Do..
-어셈블리언어 기초 파해처 보기 - 1 본 게시물은 책 게임처럼 쉽고 재미있게 배우는 어셈블리 언어 튜토리얼 - 북스 홀릭 - 책을 참고하였습니다. 어셈블리 언어는 기계어를 1:1로 매핑할 수 있는 가장 로우레벨의 언어. [ CPU, register, memory(RAM) - 사이의 데이터를 조작하는 것을 주로 한다. ] - C언어의 기준으로 어셈블리 언어에서 사용하는 함수는 CPU에 내장되어 있다. - CPU 함수를 instruction이라는 명칭으로 사용한다. - 어셈블리어 프로그래밍은 CPU함수만으로 기능을 구현하는것. 어셈블러(Assembler)는 어셈블리어로 작성된 소스를 실행 가능하게 바이너리로 변환하는 프로그램.

반응형
LIST