가상 주소로 메모리 액세스
메모리 주소 또는 주소 범위에 액세스하려면 여러 명령을 사용할 수 있습니다. Visual Studio 및 WinDbg는 메모리를 보고 편집하는 데 사용할 수 있는 사용자 인터페이스 요소(명령)를 제공합니다. 자세한 내용은 WinDbg에서 메모리 보기 및 편집(클래식)을 참조하세요.
다음 명령은 다양한 형식으로 메모리를 읽거나 쓸 수 있습니다. 이러한 형식에는 16진수 바이트, 단어(단어, 이중 단어 및 쿼드 단어), 정수(짧음, long 및 쿼드 정수 및 부호 없는 정수), 부동 소수점 숫자(10바이트, 16바이트, 32바이트 및 64바이트 실수) 및 ASCII 문자가 포함됩니다.
d* (메모리 표시) 명령은 지정된 메모리 주소 또는 범위의 내용을 표시합니다.
e* (값 입력) 명령은 지정된 메모리 주소에 값을 씁니다.
다음 명령을 사용하여 보다 특수화된 데이터 형식을 처리할 수 있습니다.
dt(표시 형식) 명령은 다양한 데이터 형식을 찾아 디버그 중인 애플리케이션에서 만든 데이터 구조를 표시합니다. 이 명령은 매우 다양하며 다양한 변형과 옵션이 있습니다.
ds, dS(Display String) 명령은 STRING, ANSI_STRING 또는 UNICODE_STRING 데이터 구조를 표시합니다.
dl(연결된 목록 표시) 명령은 연결된 목록을 추적하고 표시합니다.
d*s(단어 및 기호 표시) 명령은 기호 정보를 포함할 수 있는 이중 단어 또는 쿼드 단어를 찾은 다음 데이터 및 기호 정보를 표시합니다.
!address 확장 명령은 특정 주소에 있는 메모리의 속성에 대한 정보를 표시합니다.
다음 명령을 사용하여 메모리 범위를 조작할 수 있습니다.
m(메모리 이동) 명령은 한 메모리 범위의 내용을 다른 메모리 범위로 이동합니다.
f(메모리 채우기) 명령은 메모리 범위에 패턴을 기록하여 범위가 꽉 찼을 때까지 반복합니다.
c(메모리 비교) 명령은 두 메모리 범위의 내용을 비교합니다.
s(메모리 검색) 명령은 메모리 범위 내에서 지정된 패턴을 검색하거나 메모리 범위에 있는 ASCII 또는 유니코드 문자를 검색합니다.
.holdmem(메모리 보류 및 비교) 명령은 한 메모리 범위를 다른 메모리 범위와 비교합니다.
대부분의 경우 이러한 명령은 현재 radix에서 해당 매개 변수를 해석합니다. 따라서 현재 radix가 16이 아닌 경우 16진수 주소 앞에 0x 를 추가해야 합니다. 그러나 이러한 명령의 표시 출력은 현재 radix에 관계없이 일반적으로 16진수 형식입니다. 출력에 대한 자세한 내용은 개별 명령 topics 참조하세요. 메모리 창에는 정수와 실수가 10진수 형식으로 표시되고 다른 형식은 16진수 형식으로 표시됩니다.
기본 radix를 변경하려면 n(숫자 기준 설정) 명령을 사용합니다. 숫자를 한 베이스에서 다른 베이스로 빠르게 변환하려면 ? (식 평가) 명령 또는 .formats(숫자 형식 표시) 명령입니다 .
사용자 모드 디버깅을 수행하는 경우 가상 주소의 의미는 현재 프로세스에 따라 결정됩니다. 커널 모드 디버깅을 수행하는 경우 가상 주소의 의미를 디버거에서 제어할 수 있습니다. 자세한 내용은 프로세스 컨텍스트를 참조하세요.