Según la arquitectura de la computadora, un bus se define como un sistema que transfiere datos entre los componentes de hardware de una computadora o entre dos computadoras separadas. Inicialmente, los buses se formaron con cables eléctricos, pero ahora el término bus se usa más ampliamente para identificar cualquier subsistema físico que proporcione la misma funcionalidad que los buses eléctricos anteriores.
El bus de direcciones es una parte del bus del sistema informático dedicado a especificar una dirección física. Cuando el procesador de la computadora necesita leer o escribir usa el bus de direcciones para especificar la dirección física del bloque de memoria individual al que necesita acceder (los datos reales se envían a lo largo del bus de datos). Más correctamente, cuando el procesador quiere escribir algunos datos en la memoria, confirmará la señal de escritura, establecerá la dirección de escritura en el bus de direcciones y pondrá los datos en el bus de datos.
Un bus de datos simplemente transporta datos. Los buses internos transportan información dentro del procesador, mientras que los buses externos transportan datos entre el procesador y la memoria. Típicamente, se usa el mismo bus de datos para ambas operaciones de lectura / escritura. Cuando se trata de una operación de escritura, el procesador colocará los datos (para ser escritos) en el bus de datos. Cuando la operación es de lectura, el controlador de memoria obtendrá los datos del bloque de memoria específico y los colocará en el bus de datos.
El bus de datos es bidireccional, mientras que el bus de direcciones es unidireccional. El ancho del bus de datos está determinado por el tamaño del bloque de memoria individual, mientras que el ancho del bus de direcciones está determinado por el tamaño de la memoria que el sistema debe abordar.