0 0

C++/Java异常的原理15

我想知道具体是如何实现捕捉异常的,越详细越好。

比如:

在执行了一句除零的语句之后,底层是如何检测到出现异常了,并且是如何改变控制流的。还有,对于异常发生的检查,是不是执行了每一条语句都要去检查是否发生异常?如果是每条语句都检查,那么对于效率的有多大的影响(个人感觉影响比较大),最好有时间复杂度的分析。

PS:如果哪本书上有详细介绍,请告知...   不胜感激

2012年10月28日 17:09

3个答案 按时间排序 按投票排序

0 0

先将问题分成几部分。
关于除0,在底层方面是进行检测标志位的。这一点在王爽著的《汇编语言》的15、16章有过介绍。
至于程序语言中的异常处理机制,各语言中具体的实现机制还是有点区别的,不过互相之间可以参考下。

2012年12月08日 14:46
0 0

代码执行结束的时候会有标志位检测~这个标志位会携带溢出的标志~~~通过这些溢出标志来选择抛异常~

2012年11月26日 19:41
0 0

可以去研究一下jvm是怎么处理异常的

参考几个链接吧:
http://happyenjoylife.iteye.com/blog/1061495
http://www.blogjava.net/liudecai/archive/2009/04/08/264460.html
http://www.cnblogs.com/burandanxin/archive/2009/12/17/1626730.html

2012年10月29日 16:14

相关推荐

Global site tag (gtag.js) - Google Analytics