例如
MOV AX , [BX][BP]
MOV AX , [DI][SI]会出错
而MOV AX , [BX][DI]
MOV AX , [BX][SI]
MOV AX , [BP][DI]
MOV AX , [BP][SI]
不会出错
BX和BP:
BX的默认基址是DS(数据段),而BP默认基址是SS(堆栈),在基址缺省的情况下,可以自动分辨改用哪个基址,比如MOV AX,[BP]或者MOV AX,[BX]
但如果MOV AX,[BX][BP]则不能判断哪个是基址了,既有可能是DS也有可能是SS。
SI和DI:
SI和DI一个是源变址寄存器(src)和目的变址寄存器(dist),如果两个一起使用的话,那那个操作数到底是源地址还是目的地址呢?因此也不行。