汇编操作的时间

klm*_*123 1 c++ time assembly

为什么在程序的不同部分中相同的汇编程序操作(例如mul)会消耗不同的时间量?

PS我正在使用C++和反汇编程序.

Ste*_*ack 5

这个问题非常模糊,但通常在现代CPU上,您不能指望操作具有恒定的执行时间,因为很多因素都会影响这一点,包括但不限于:

  • 分支预测失败
  • 缓存未命中
  • 流水线
  • ...