|
SetUnhandledExceptionFilter以后try-catch为什么还会有效?
现在还遇到一个更奇怪的问题,我发现有时候发生异常时刻的线程各寄存器CONTEXT与ExceptionFilter里面的参数内容竟然也会不同,这又可能是什么原因造成的呢? ----------------------- 这个我是在调试别人的程序时发现的,我用CreateRemoteThread将DLL注入被调试进程,在DllMain的DLL_PROCESS_ATTACH里面SetUnhandledExceptionFilter,某些时候出现异常后,会发现两者内容不一致,只有Eip是相同的。会是他再次调用了SetUnhandledExceptionFilter覆盖了我设定的回调的缘故吗?我发现即便是在异常前重新设置一次我设定的回调,结果还是这样。 |
|
[求助]浮点指令有没有可能运算失败,得到-1.#INF结果?
应该可以确认这问题与WAIT无关了。 另外我修改了调用方法,给一次调用留三次机会,如果发现一次计算结果包含-1.#INF,则直接还原参数重新调用,如果重新调用后再次出现-1.#INF,那么写文件错误日志。可结果再也没出现过错误日志了。 难道浮点计算真会概率性失败吗?不知道到底与什么有关…… |
|
|
|
[求助]fstcw与fnstcw指令到底有啥区别?
标题看不出来,那么顶楼的内容里面应该有“fstcw = wait + fnstcw”了吧? 此外,我并没有说你的意思“就是100%出现异常”,而是以“概率的形式”,并且是问号结尾,也就是揣摩而已,无需这么激动。 最后,我承认我英文不咋的,看看英文文档也无法做到100%不会误解其意义,不过同样我不认为易语言可以帮助我解决问题。而你的意思似乎也是如此,那么何必让我去研究一个你自己都不信任的易语言呢? 如果你的英文还行,并且你的耐心还在,那么我提前感谢你回答一下我12L对那段英文的理解是否存在错误。 |
|
[求助]fstcw与fnstcw指令到底有啥区别?
“check for and handle pending, unmasked, floating-point exceptions”怎么理解? 是否是说浮点出了异常,并不会立刻反映到CPU上,而是有一个延时?然后wait的作用就是如果这个异常当时处于pending(挂起状态),并且是unmasked(未被屏蔽)的浮点异常,那么会等待这个异常被CPU接受后返回?如果不去wait,那么这个异常体现的时机会延后,而如果直接fldcw,这个异常可能会丢失呢? |
|
[求助]fstcw与fnstcw指令到底有啥区别?
那么你的意思是,不加wait就有一定的概率会出浮点异常导致程序挂掉么,那么这个概率会在什么情况下产生? 我想我应该在你进行嘲讽之前先告诉你,只要浮点控制寄存器屏蔽了异常处理(也就是0x027F后面的0x7F),本来就是不会触发浮点异常。那么这个wait在这里还有意义么?另外,实际使用中,我并没有遇到因为少写一个wait导致浮点异常的,当然你也可以反驳那只是一个概率问题。 另外,如果fldcw设置浮点控制寄存器为0x0200,那么浮点除零、溢出等等运算都回触发异常,与是否曾经wait过有关。 最后你对易语言的了解实在是太可笑,你认为这问题扔到易语言上就可以找到答案么? |
|
[求助]浮点指令有没有可能运算失败,得到-1.#INF结果?
浮点运算是否需要在一些地方加入WAIT指令才能保证不出错啊? |
|
[求助]fstcw与fnstcw指令到底有啥区别?
我知道“FSTCW = WAIT + FNSTCW”,但是我不知道去掉WAIT会有什么后果。 换句话说也就是,如果没有“check for and handle pending, unmasked, floating-point exceptions”,会有什么后果? 你认为看指令手册可以知道么?你已经看过了,那么现在你可以说出去掉WAIT有什么后果了么? |
|
[求助]fstcw与fnstcw指令到底有啥区别?
只说wait、fnstcw干嘛用的,没说不用wait直接fnstcw会有什么后果。这么说你知道有什么后果了么,请讲? |
|
[求助]fstcw与fnstcw指令到底有啥区别?
fstcw编译后变成wait+fnstcw,去掉wait是否会造成什么后果?我不认为这个问题通过查指令手册就可以解决。 |
|
[求助]fstcw与fnstcw指令到底有啥区别?
有人知道吗? |
操作理由
RANk
{{ user_info.golds == '' ? 0 : user_info.golds }}
雪币
{{ experience }}
课程经验
{{ score }}
学习收益
{{study_duration_fmt}}
学习时长
基本信息
荣誉称号:
{{ honorary_title }}
能力排名:
No.{{ rank_num }}
等 级:
LV{{ rank_lv-100 }}
活跃值:
在线值:
浏览人数:{{ visits }}
最近活跃:{{ last_active_time }}
注册时间:{{ user_info.create_date_jsonfmt }}
勋章
兑换勋章
证书
证书查询 >
能力值