A very old Intel Pentium CPU Floating-Point Bug:

...

// Sub-Test for Intel Pentium CPU Floating-Point Bug

// Note: There is a very small set of numbers for which the product of two numbers

// is computed differently on Intel 486 and Pentium CPUs

RTfloat fValue = 4195835.0f - ( ( 4195835.0f / 3145727.0f ) * 3145727.0f );

RTdouble dValue = 4195835.0L - ( ( 4195835.0L / 3145727.0L ) * 3145727.0L );

// Results:

// Intel 486 CPU = 0

// Intel Pentium CPU = 256

// All the rest Intel CPUs = 0

...

was detected by a scientist... and I look forward to hearing from Intel hardware / software engineers regarding possible error correction for integer arithmetics.

## ALU/CPU Error Detection

This question is about detecting and possibly correcting arithmetic errors in the CPU.

Consider any recent core iX Intel CPU. Suppose I wanted to multiply 8 times 7, in psuedo-code thusly,

mov 8 to AX

mul AX by 7

Then further suppose the ALU came up with 55 instead of 56. Would the CPU issue an error of some kind. If so, how? Fundamentally my question relates to errors in arithmetic, which because of cosmic rays and voltage blips are almost certain to occur. Is there any logic in the ALU/CPU to detect and possibly correct such errors?

The answer is important. At least tell me how to find the answer.