8086cpu为什么不能将数值直接送入段寄存器

可能的答案:
段寄存器在CPU里,数据寄存器也在CPU里,如果想向段寄存器里写入数值,必须通过数据寄存器,在CPU外部的数据无法直接送给段寄存器。具体硬件原理我也不清楚,貌似是数据总线和数据寄存器相连接,不直接和段寄存器链接,所以写入数据必须通过数据寄存器。 
立即数在指令执行前是在指令缓冲器里的,比如MOV  AX,0   在执行前,0在指令缓冲器里,而指令缓冲器和段寄存器是没有连接的,就是没有通路,所以指令MOV   DS,0是不能被执行的,必须先把0送入AX ,再通过AX 传递给DS。

你可能感兴趣的:(8086cpu为什么不能将数值直接送入段寄存器)