在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
//以下三个函数功能一样, 但效率不同 {Fun1 需要读取常数 0, 最慢} function Fun1: Integer; asm mov eax, 0 end; {Fun2 与 Fun3 只是操作 CPU 的寄存器, 比 Fun1 快} function Fun2: Integer; asm sub eax, eax end; {Fun3 最快} function Fun3: Integer; asm xor eax, eax end; //速度测试 procedure TForm1.Button1Click(Sender: TObject); var t: Cardinal; i: Integer; begin t := GetTickCount; for i := 0 to 100000000 do Fun1; t := GetTickCount - t; ShowMessage(IntToStr(t)); {均: 600 多} t := GetTickCount; for i := 0 to 100000000 do Fun2; t := GetTickCount - t; ShowMessage(IntToStr(t)); {均: 500 多} t := GetTickCount; for i := 0 to 100000000 do Fun3; t := GetTickCount - t; ShowMessage(IntToStr(t)); {均: 400 多} end; |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论