找回密码
 欢迎注册
楼主: 无心人

[原创] 来点复杂的吧

[复制链接]
 楼主| 发表于 2009-2-24 19:16:49 | 显示全部楼层
明白怎么回事了 上面代码不能处理P31 偶太笨啦
  1. #define P31 0x7FFFFFFF
  2. __declspec(naked)
  3. DWORD __fastcall modAdd(DWORD a, DWORD b)
  4. {
  5. __asm
  6. {
  7. add ecx, edx
  8. mov eax, ecx
  9. sub ecx, P31
  10. cmovnc eax, ecx
  11. ret
  12. }
  13. }
  14. __declspec(naked)
  15. DWORD __fastcall modSub(DWORD a, DWORD b)
  16. {
  17. __asm
  18. {
  19. mov eax, P31
  20. sub eax, edx
  21. add eax, ecx
  22. mov ecx, eax
  23. sub ecx, P31
  24. cmovnc eax, ecx
  25. ret
  26. }
  27. }
  28. __declspec(naked)
  29. DWORD __fastcall modMul(DWORD a, DWORD b)
  30. {
  31. __asm
  32. {
  33. mov eax, ecx
  34. mul edx
  35. shld edx, eax, 1
  36. and eax, P31
  37. add eax, edx
  38. mov ecx, eax
  39. sub ecx, P31
  40. cmovnc eax, ecx
  41. ret
  42. }
  43. }
复制代码
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2009-2-24 19:20:02 | 显示全部楼层
这次应该OK了吧
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2009-2-25 08:39:17 | 显示全部楼层
Linux下面到现在找到8个结果了(共处理了约3072个文件),都在 http://bbs.emath.ac.cn/viewthrea ... fromuid=20#pid16447 不过程序还有bug,麻烦的是windows下的程序遇到异常以后,自动被VC捕获,程序就不运行了。看来需要将异常全部阻止才可以。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2009-2-25 09:17:21 | 显示全部楼层
呵呵 还是要调试吧
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2009-2-25 09:24:41 | 显示全部楼层
呵呵,等什么时候有空闲时再看看。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2009-2-25 09:29:42 | 显示全部楼层
我想改你的srap 让能自动判定是否解决了当前文件 然后用wrap 连续运算
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2009-2-25 09:57:40 | 显示全部楼层
比较好的方法是在程序finder和sfilter的main函数里面加入这样的结果 try{ //all original code comes here }catch(...){ printf("error!!!!"); }
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2009-2-25 13:46:41 | 显示全部楼层
现在我在windows下运行的机器也总算开始出一个解了,大部分还是Linux机器找到的,还找到一个18棵树18行的结果。 解真是稀少呀。输入数据是71个数据一个文件。现在估计至少500个以上文件才出一个解,估计总共也就几百个解 。然后还需要用它们来构造19棵树和20棵树的解。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2009-2-25 14:04:05 | 显示全部楼层
呵呵 假设有1000个结果 构造19,20的树,会有多少计算时间?
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2009-2-25 14:14:22 | 显示全部楼层
如果能够将这1000个结果的坐标都求出来,那余下的应该很快。 不过估计这个方法不大行,毕竟现在求坐标我通常都是通过maxima软件辅助来做的。 所以应该还可以采用类似现在的方法去做。 1000个数据也就相当于现在十几个文件的数据量。即使那个时候产生解的比例要稍微高一些(我估计会如此,要不然解的数目太少了),哪也应该是很快的事。 所以现在这一步是主要的瓶颈
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
您需要登录后才可以回帖 登录 | 欢迎注册

本版积分规则

小黑屋|手机版|数学研发网 ( 苏ICP备07505100号 )

GMT+8, 2024-11-21 20:56 , Processed in 0.024105 second(s), 15 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表