| Предыдущий | Следующий |
| STATUS_FLOAT_UNDERFLOW | STATUS_INTEGER_OVERFLOW |
STATUS_INTEGER_DIVIDE_BY_ZERO
Что означает STATUS_INTEGER_DIVIDE_BY_ZERO
STATUS_INTEGER_DIVIDE_BY_ZERO означает, что целочисленная инструкция деления получила divisor, равный нулю.
Что сохранить
- Faulting instruction и operand width.
- Dividend и divisor из регистров или памяти непосредственно в момент exception.
- Call stack и исходные входные данные, из которых рассчитан divisor.
Как искать причину
Подтвердите ноль на уровне инструкции, затем трассируйте значение назад к выражению в исходном коде. Проверьте narrowing casts, signed/unsigned conversion и race, при котором другой поток мог обнулить значение между проверкой и делением. Это отличается от integer overflow: здесь проблема именно в нулевом divisor.
Технические ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.
