다음을 통해 공유


OpCodes.Div 필드

정의

두 값을 나누고 결과를 부동 소수점(F 형식)이나 몫(int32 형식)으로 계산 스택에 푸시합니다.

public: static initonly System::Reflection::Emit::OpCode Div;
public static readonly System.Reflection.Emit.OpCode Div;
 staticval mutable Div : System.Reflection.Emit.OpCode
Public Shared ReadOnly Div As OpCode 

필드 값

설명

다음 표에서는 간단한 참조 요약과 함께 명령의 16진수 및 MSIL(Microsoft Intermediate Language) 어셈블리 형식을 나열합니다.

서식 어셈블리 형식 Description
5B div 두 값을 나누어 몫 또는 부동 소수점 결과를 반환합니다.

스택 전환 동작은 순차적으로 다음과 같습니다.

  1. value1 는 스택에 푸시됩니다.

  2. value2 는 스택에 푸시됩니다.

  3. value2value1 는 스택 value1 에서 팝됩니다. 은 로 value2나뉩니다.

  4. 결과는 스택에 푸시됩니다.

result = value1 div value2는 다음 조건을 충족합니다.

| result | = | value1 | / | value2 |, 및:

sign(result) = +, if sign(value1) = sign(value2) 또는 -, if sign(value1) ~= sign(value2)

명령은 div 결과를 계산하고 스택에 푸시합니다.

정수 나누기 가 0으로 자립니다.

한정된 숫자를 0으로 나누면 올바르게 부호 있는 무한 값이 생성됩니다.

0 또는 무한대를 무한대로 나누면 NaN(Not-A-Number) 값이 생성됩니다. 무한대로 나눈 숫자는 0 값을 생성합니다.

결과 형식에서 결과를 나타낼 수 없는 경우 정수 연산이 throw ArithmeticException 됩니다. 가 최대 음수 값이고 value2 가 -1이면 value1 이 문제가 발생할 수 있습니다.

가 0이면 value2 정수 연산이 throw DivideByZeroException 됩니다.

Intel 기반 플랫폼에서는 컴퓨팅할 때 이 OverflowException throw됩니다(최소 div -1). 부동 소수점 연산은 예외를 throw하지 않습니다(대신 NaN 또는 무한을 생성함).

다음 Emit 메서드 오버로드는 opcode를 div 사용할 수 있습니다.

적용 대상