Para a comunicação com periféricos e processadores externos , o 8086 trabalha com portas de
entrada e saída de dados.
Tab. 1: Portas IBM PC
| Porta |
Uso |
| 0000h-001Fh |
DMA Controller |
| 0020h-0021h |
Programmable Interrupt Controller |
| 0040h-0047h |
Programmable Interval Timer |
| 01F0h-01F7h |
ATA harddisk Controller |
| 03F0h-03F7h |
Floppy disk Controller |
Tanto para entrada quanto para a saída, o 8086 suporta portas em 8 e 16-bits que são passadas
como operando imediatos para as instruções IN e OUT.
Apenas os registradores AL ou AX podem ser utilizados para armazenar ou enviar dados pelas
portas de entrada ou saída.
Ex:
IN AX, 4 ; porta 4, 16-bits de dados
IN AL, 7 ; porta 7, 8-bits de dados
OUT 7, AL
OUT 4, AX
Os pinos S3-S6, S7/BHE, DEN, ALE e M/IO ficam responsáveis por gerenciar essa comunicação pelo
lado do 8086 e o chip 8255, por exemplo, pelo lado externo.
Os locais ou portas no intervalo F8h a FFh são reservadas para uso futuro de hardware e softwares,
e não devem ser utilizados. O uso pode inibir compatibilidade com futuros produtos da Intel.
A definição das portas e seus destinos para uso são de responsabilidade do hardware que utiliza
o 8086 como processador principal.