intel 8086处理器标志寄存器中保留位和未定义bist之间的差异

时间:2012-11-09 16:36:24

标签: assembly intel x86-16

在intel 8086处理器的16位标志寄存器中有9个标志(每个1位,位号0,2,4,6,7,8,9,10,11,我们将它们称为ZF ,OF,...)位号1,3,5标记为“U”(未定义),位号12,13,14,15标记为“R”(保留)。

我的问题是,保留位与intel 8086处理器中的未定义位有什么区别?

由于

2 个答案:

答案 0 :(得分:3)

保留几乎总是意味着“保留供将来使用”,以允许英特尔在以后的CPU中添加扩展。

没有一个标志是“未定义的” - 它们都被定义或保留。您可能已经看到的是一个表,描述了每个指令如何影响不同的标志,其中特定指令对特定标志的影响可能是未定义的(即使该特定标志不是未定义的标志)。一个例子是IDIV指令,它将大多数定义的标志(溢出,进位等)留在未定义的状态。

答案 1 :(得分:2)

可以定义保留位。未定义的位永远不会。如果某个位是“保留”,则保留用于某些特定目的。如果它是“未定义的”,那么在那一点上没有决定它的目的。

例如,如果某个位设置了用户永远不应该启用的特定测试模式,则该位将被保留但不会被定义。