装配能使程序用C写得更快吗?

Oha*_*ily -1 c performance assembly

我正在使用C语言编写程序,并且需要使其显着更快,因为这是对性能的评估.所以我很好奇汇编代码是否可以在任何级别使C程序更快?如果我用汇编代替部分C代码,是否可以缩短程序的运行时间?(例如巨大的循环).

谢谢.

dus*_*uff 5

使用汇编代替C代码可以使代码更快,当且仅当满足以下一个或多个条件时:

  1. 您的编译器生成了可怕的代码.

  2. 您忘记启用优化.

  3. 您要替换的C代码异常低效.

  4. 您正在编写的程序集正在利用编译器无法使用的CPU功能,例如矢量操作或特定于任务的原语(如加密加速).(请注意,一些现代编译器也可以自动对代码进行矢量化,尽管并不总是很好.)

如果上述条件均不属实,那么您将浪费时间.