我对旧计算机的逆向计算和仿真感兴趣,并对80287有疑问:
使用现代FPU时,当CPU执行16位代码时,FNSAVE指令会写入94字节的数据,而当CPU执行32位代码时,会写入108字节的数据。 FSTENV指令的行为相似(14或28个字节,具体取决于代码类型)。
但是,为16位80286 CPU设计的80287 FPU也可以与32位80386 CPU一起使用。
当使用386/287组合启用分页从32位代码调用时,FNSAVE和FSTENV的行为如何?
80287手册明确提到了80386,但它只描述了94字节的数据格式。然而,另一本手册指出它是80386而不是80387,它负责保存108个字节而不是94个字节。
Linux在使用80287时据称崩溃的原因是什么?
94字节格式是否与Linux有关?
由于