CAFE

오디오와 컴퓨터

디 어셈블링(Disassembling)

작성자관운|작성시간14.10.06|조회수175 목록 댓글 0

 

디 어셈블링(Disassembling)

 

 

 

 

이 기능은 옵션 대화 상자의 디버깅 노드에서 주소 수준 디버깅을 설정한 경우에만 사용할 수 있습니다. 스크립트 또는 SQL 디버깅에는 사용할 수 없습니다.

 

디스어셈블리 창에는 컴파일러에서 만든 명령에 따라 어셈블리 코드가 표시됩니다. 관리 코드를 디버깅하는 경우 이러한 어셈블리 명령은 Visual Studio 컴파일러에서 생성한 MSIL(Microsoft Intermediate Language)이 아닌 JIT(Just-in-Time) 컴파일러에서 만든 네이티브 코드에 대응합니다.

 

디스어셈블리 창에는 어셈블리 지침뿐 아니라 다음과 같은 선택적 정보도 표시할 수 있습니다.

 

각 명령이 있는 메모리 주소, 네이티브 응용 프로그램의 경우 실제 메모리 주소, Visual Basic, C# 또는 관리 코드의 경우 함수 시작 부분으로부터의 오프셋

 

어셈블리 코드가 파생된 소스 코드

 

코드 바이트(실제 컴퓨터 또는 MSIL 명령의 바이트 표시)

 

메모리 주소의 기호 이름

 

소스 코드에 해당하는 줄 번호

 

어셈블리 언어 명령은 명령 이름의 약어인 니모닉과 변수, 레지스터 및 상수를 나타내는 기호로 이루어집니다. 각 컴퓨터 언어 명령은 하나의 어셈블리 언어 니모닉으로 표시되며 그 뒤에는 보통 하나 이상의 변수, 레지스터 또는 상수가 옵니다.

 

어셈블리 언어를 읽을 수 없을 때 디스어셈블리 창을 최대한 활용하려면 어셈블리 언어 프로그래밍 관련 서적을 참조하십시오. 어셈블리 언어 프로그래밍은 디스어셈블리 창에 대한 이 간략한 소개의 범위를 벗어납니다.

 

어셈블리 코드는 프로세서 레지스터(관리 코드의 경우에는 공용 언어 런타임 레지스터)를 많이 사용하기 때문에 레지스터의 내용을 검사할 수 있는 레지스터 창과 함께 디스어셈블리 창을 사용하는 것이 좋습니다.

 

아마 컴퓨터 코드 명령을 어셈블리 언어가 아닌 원시 숫자 형식으로 보려는 사람은 없을 것입니다. 그러나 그렇게 하려면 용도에 따라 메모리 창을 사용하거나 디스어셈블리 창의 바로 가기 메뉴에서 코드 바이트를 선택할 수 있습니다.

    

다음검색
현재 게시글 추가 기능 열기

댓글

댓글 리스트
맨위로

카페 검색

카페 검색어 입력폼