I/0埠有關的定址方式

Farmwang發表於2015-11-28

I/0埠有關的定址方式

8086微處理器採用獨立編址的I/0埠,有專門的輸入指令IN和輸出指令OUT,定址方式有以下兩種。

直接埠定址

  直接埠定址是在指令中直接給出要訪問的埠地址,一般採用2位十六進位制數表示,也可以是符號,訪問的埠範圍0~255.

  例如:

IN AL,20H

  表示從I/0埠地址為20H的埠中取資料送入AL暫存器中。

間接埠定址

  若訪問的埠地址大於255時,就要用間接定址方式。可以訪問的埠範圍0~65535.

  例如:

MOV DX,356H ;將埠地址356H送入DX暫存器

OUT DX,AL ;將AL中的內容輸出到DX指定的埠

 

隱含定址

  不是明顯的給出運算元地址,而是在指令中隱含著運算元的地址即要尋找的地址包含在操作碼中。例如在單地址指令格式中,就是不明顯的給出第二運算元的地址,而是以隱含的方式規定累加器作為第二運算元的地址。

  如DAA ;指令的操作物件為AL,結果也存於AL中。

相關文章