如何区别立即寻址和直接端口寻址

在下才疏学浅,课没上好,不知如何区别立即寻址和直接端口寻址。
比如书上说:MOV AL,12H是立即寻址,IN AL,20H是直接端口寻址。可我不知如何区分。
请高人指点。不知道的不要瞎回答。

立即数寻址原操作数就是一个数值,端口寻址原操作数是端口地址
虽然都是12H,一个是表示12H这个数,一个是地址为12H

操作数直接存放在指令中,紧跟在操作码之后的寻址方式就是立即数寻址方式。 例如: MOV AX,2345H MOV AL,0EH

8086微处理器采用独立编址的I/0端口,有专门的输入指令IN和输出指令OUT,寻址方式有以下两种。
直接端口寻址
直接端口寻址是在指令中直接给出要访问的端口地址,一般采用2位十六进制数表示,也可以是符号,访问的端口范围0~255. 例如: IN AL,20H 表示从I/0端口地址为20H的端口中取数据送入AL寄存器中。

参考资料:http://baike.baidu.com/view/889427.htm

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-06-05
立即寻址是把一个数送到指定地址,比如说 MOV A, #30H 把数据30H数据送累加器
直接寻址是把一个地址内的数据送到指定地址,比如说MOV A ,30H 把30H内的数据送累加器
相似回答