楼主: KeyTo9_Fans
|
[求助] 2个64bit的无符号整数相乘,C++如何实现最快? |
发表于 2012-8-3 15:23:00
|
显示全部楼层
| ||
毋因群疑而阻独见 毋任己意而废人言
毋私小惠而伤大体 毋借公论以快私情 |
||
发表于 2013-7-2 22:13:46
|
显示全部楼层
| ||
毋因群疑而阻独见 毋任己意而废人言
毋私小惠而伤大体 毋借公论以快私情 |
||
| ||
毋因群疑而阻独见 毋任己意而废人言
毋私小惠而伤大体 毋借公论以快私情 |
||
发表于 2019-4-28 14:40:44
|
显示全部楼层
点评
根据你的提示,在vs里下拉解决方案平台,发现是win32,改成x64,编译就通过了,而且运行结果正确。
| ||
毋因群疑而阻独见 毋任己意而废人言
毋私小惠而伤大体 毋借公论以快私情 |
||
发表于 2019-4-28 15:26:52
|
显示全部楼层
| ||
毋因群疑而阻独见 毋任己意而废人言
毋私小惠而伤大体 毋借公论以快私情 |
||
发表于 2019-4-28 20:21:10
|
显示全部楼层
| ||
毋因群疑而阻独见 毋任己意而废人言
毋私小惠而伤大体 毋借公论以快私情 |
||
发表于 2019-4-29 13:58:51
|
显示全部楼层
点评
其实我的吐槽主要是针对msc的,因为gcc严格遵循各种C++标准(比如C++11甚至C++17)而MS总是给C++捣乱(哪怕--std=c++17都干不动这伙计……)
sscanf sscanf_s 都是ms先用的, sscanf_s是 sscanf 的改进版本,ms专有,gcc显然不支持, _s 表示safe
windows的library是gcc生成的? 先有windows还是linux? 先有msc还是gcc?
c是最低级的高级语言,支持汇编语言,曾经被誉为系统编程语言.应用于开发新的系统.如今辉煌不再
改成sscanf吧,sscanf_s是微软的。但那个UnsignedMultiply128,gcc是否支持就不清楚了。
| ||
毋因群疑而阻独见 毋任己意而废人言
毋私小惠而伤大体 毋借公论以快私情 |
||
发表于 2019-4-29 16:36:33
|
显示全部楼层
| |
毋因群疑而阻独见 毋任己意而废人言
毋私小惠而伤大体 毋借公论以快私情 |
|
发表于 2019-4-30 21:08:26
|
显示全部楼层
点评
测试了一下,好像GCC的支持比我写的汇编好一点,我以为gcc会自动重命名寄存器,其实不会……导致我的代码里面多了一句“把变量复制进%rdx”(以及,把结果复制出来)
| ||
毋因群疑而阻独见 毋任己意而废人言
毋私小惠而伤大体 毋借公论以快私情 |
||
发表于 2020-5-13 09:50:54
|
显示全部楼层
| ||
毋因群疑而阻独见 毋任己意而废人言
毋私小惠而伤大体 毋借公论以快私情 |
||
小黑屋|手机版|数学研发网 ( 苏ICP备07505100号 )
GMT+8, 2024-12-27 20:43 , Processed in 0.097194 second(s), 15 queries .
Powered by Discuz! X3.5
© 2001-2024 Discuz! Team.