这个问题可能很傻,但我还是会问。我从这个Mysticial 的回答
中听说了分支预测
,我想知道是否有可能发生以下情况
假设我有这段 C++ 代码
while(memoryAddress = getNextAddress()){
if(haveAccess(memoryAddress))
// change the value of *memoryAdrress
else
// do something else
}
因此,如果分支预测器在某些情况下错误地预测 if 语句为真,然后程序更改 *memoryAddress 的值,那么可能会发生不好的情况吗?会发生分段错误之类的事情吗?