div/0 Exception
-
gibt es eigentlich compiler die nicht per default die HW-exception für "divide by zero" rausmaskieren?
-
Was meinst du mit HW-exception? Ist es nicht so, dass bei "divide by zero" ein SW Interrupt ausgelöst wird? Genauso wie zB bei einer ungültigen Instruktion?
-
naja, "normalerweise" sollte schon eine Fehlerbehandlung kommen. So was wie SEH. Aber z.B LCC32 für Win hat diese nicht. Zwar gibts einen Compilererror wenn man versucht zahl/0 zu schreiben aber mit einigen "tricks" kann man es trotzdem kompilieren und dann kommt keine Fehlerbehandlung sonderen direkte meldung von meinem "normaldebugger" dass eine "unknown Software Exeption" aufgetreten sei. Eine Exception ist ein vom Prozessor erzeugter Interruptaufruf.
Im Prinzip stimmen die von Windows "durchgestellten" Exceptions mit den "richtigen" in der Nummer überien (z.B 0 für Divide Error, 4 Overflow usw)
http://www.beyondlogic.org/interrupts/interupt.htm
http://support.microsoft.com/?kbid=150314
-
mir ging es eigentlich um die FPU Exceptions die ja maskierbar sind und deswegen auch abgeschalltet werden können.