Programar em Assembly com GAS/Entrada e Saída (E/S): diferenças entre revisões

[revisão pendente][revisão pendente]
Conteúdo apagado Conteúdo adicionado
EvertonS (discussão | contribs)
EvertonS (discussão | contribs)
Linha 10:
 
Para realizar operações de E/S, a CPU deve se comunicar com módulos E/S, sejam periféricos, um controlador ou canal.
 
Por exemplo, o modulo E/S que serve de interface entre o processador e o disco sera chamado de controlador de disco .
 
Os computadores modernos nos oferecem um grande numero de portas, para ser exato 65535 portas enumeradas de 0000h a FFFFh.
 
As portas de entrada e saída podem ser vistas como um canal de radio. Para comunicar com uma porta serial do computador devemos saber qual porta (canal de radio) esta escutando.Da mesma maneira para receber os dados de uma porta serial devemos saber em que porta de E/S eles estão sendo emitidos.<br>
Um dos problemas das portas é que elas são designadas por um endereço haxadecimalhexadecimal como os endereços da memória. A diferença é que quando o computador envia os dados a um endereço da memória eles são estocados na memória SIMM ou DIMM . Mais quando ele envia os dados ao endereço de uma porta eles sao enviados ao BUS desse "canal" e todos os periféricos que escutam podem receber .Se nem um periférico escuta esse endereço de porta os dados chegam ao fim do BUS e saosão absorvidos pela resistência de final do BUS.
 
Existem dois métodos para lidar com um dispositivo de E/S :