OpCodes.Ldind_U1 필드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
unsigned int8
형식의 값을 int32
로 스택에 간접적으로 로드합니다.
public: static initonly System::Reflection::Emit::OpCode Ldind_U1;
public static readonly System.Reflection.Emit.OpCode Ldind_U1;
staticval mutable Ldind_U1 : System.Reflection.Emit.OpCode
Public Shared ReadOnly Ldind_U1 As OpCode
필드 값
설명
다음 표에는 간단한 참조 요약과 함께 명령의 16진수 및 MSIL(Microsoft Intermediate Language) 어셈블리 형식이 나와 있습니다.
서식 | 어셈블리 형식 | Description |
---|---|---|
47 | ldind.u1 | 주소 addr 의 unsigned int8 값을 스택int32 에 로 로드합니다. |
스택 전환 동작은 순차적으로 다음과 같습니다.
주소가 스택에 푸시됩니다.
주소가 스택에서 튀어나온 경우 주소에 있는 값을 가져옵니다.
가져온 값이 스택에 푸시됩니다.
명령은 ldind.u1
지정된 주소(형식native int
, &
또는 *)의 값을 로 스택int32
에 간접적으로 로드 unsigned int8
합니다.
ldind
모든 지침은 해당 기본 제공 값 클래스를 Ldobj 지정하는 명령의 바로 가기입니다.
4바이트 미만의 정수 값은 평가 스택에 로드될 때 (아님native int
)로 확장 int32
됩니다. 부동 소수점 값은 평가 스택에 로드될 때 형식으로 변환 F
됩니다.
올바른 형식의 MSIL(Microsoft Intermediate Language)을 사용하면 ldind
포인터 형식과 일치하는 방식으로 명령이 사용됩니다.
처음에 스택에 푸시된 주소는 컴퓨터에서 개체의 자연스러운 크기에 맞춰야 합니다. 또는 NullReferenceException 이 발생할 수 있습니다(예방 조치에 대한 접두사 명령 참조 Unaligned ). 주소(예 Ldloca : 및 Ldarga)를 반환하는 모든 MSIL 명령의 결과가 안전하게 정렬됩니다. 1 바이트보다 큰 데이터 형식의 경우 바이트 순서는 대상 CPU에 따라 달라집니다. 바이트 순서에 의존하는 코드는 모든 플랫폼에서 실행되지 않을 수 있습니다.
NullReferenceException 잘못된 주소가 검색되면 throw될 수 있습니다.
다음 Emit 메서드 오버로드는 opcode를 ldind.u1
사용할 수 있습니다.
적용 대상
.NET