My project team was having a discussion about doing math in assembly language, and an interesting side-issue question was raised that nobody could answer.

We all know how to extend all sorts of math operations in fixed point with more bits than are native to the processor. and we all know how to plug in a floating point library or to use a floating point co-processor if there is one, but is it possible to extend floating point math operations to have more bits than are native to the co-processor?

For example, let's say that I have a math co-processor that handles ANSI/IEEE Std 754-1985 floating point in single-precision 32 bit and double-precision 64 bit:

Single-precision 32 bit

1 8 23