본문 바로가기
반응형

Assembly2

어셈블리어/Assembly_4_Break Point(브레이크 포인트) 어셈블리어/Assembly_4_Break Point(브레이크 포인트) 4. Break Point(브레이크 포인트)란? 프로그램을 실행하는 도중에 유저가 필요한 시점에서 프로그램을 일시정지 시키는 역할. 디버깅 기법 중 하나. 명령을 실행하는 CPU를 일시 중지, 한 바이트 명령어를 사용해 디버깅 대상 프로세스의 실행을 중지 보통 어플리케이션을 디버깅할 때 사용되는 브레이크 포인트, 일반적 코드 : 0xCC, INT 3 동작방법 1. 현재 주소의 opcode를 뽑아서 브레이크 포인터 테이블에 저장 2. opcode를 0xCC로 교체 3. 명령어 실행 4. 원래의 opcode로 돌려놓음 종류 - 일회성 브레이크 포인트 : 브레이크 포인트 리스트에 정보가 들어가고 브레이크가 수행되고 나면 리스트에서 정보가 제.. 2022. 1. 14.
어셈블리어/Assembly_1 어셈블리어/Assembly_1 1. 레지스터란? CPU 내부에 존재하는 작은 고속의 메모리이다. 레지스터의 종류 > 위 레지스터들은 범용 레지스터, 인덱스 레지스터, 포인터 레지스터라고 한다. > 32비트 환경에서는 첫 글자가 E(Extended)로 시작한다. > 64비트 환경에서는 첫 글자가 R(Register)로 시작하고 32비트의 레지스터를 포함한다. 범용 레지스터 AX(Accumulator) : 연산에 사용 BX(Base) : 메모리 주소 지정 시 사용 CX(Counter) : 반복과 같은 상황에 사용 DX(Data) : EAX와 함께 연산, 부호확장 인덱스 레지스터 SI(Source) : 메모리를 이동 및 비교 시 해당 주소 DI(Destination) : 메모리 이동 및 비교 시 목적지 주소 .. 2022. 1. 14.
반응형