A ver si con una explicacion mas formal (y mucho mejor que la mia) se entiende:
"Los puertos de entrada/salida (E/S) suponen un mecanismo mediante el cual el microprocesador puede comunicarse con dispositivos externos. Algunos de esos puertos son de salida o escritura, otros de entrada o lectura y algunos contemplan tanto la escritura como la lectura. Las instrucciones para efectuar esas operaciones son out e in respectivamente. Mediante la instruccion out se envia el contenido del registro AL o AX, el que se entregue como segundo parametro, al puerto de E/S indicado como primer argumento. Este puede ser un valor inmediato, en caso de que el puerto se encuentre entre 0 y 255, o bien facilitarse en el registro DX, si esta entre 256 y 65535. El efecto de la instruccion dependera, logicamente, del puerto en el que se escriba y el valor que se escriba.
La instruccion complementaria a out, que es in, toma exactamente los mismos parametros, pero en orden inverso."