Un bus informatique est un dispositif de transmission de données partagé entre plusieurs composants d'un système numérique. Le terme dérive du latin omnibus (à tous) ; c'est le sens, d'un usage plus ancien, du terme bus en électronique. Le bus informatique est la réunion des parties matérielles et immatérielles qui permet la transmission de données entre les composants participants.
On distingue généralement un bus d'une part d'une liaison point à point, qui ne concerne que deux composants qui en ont l'usage exclusif, et d'autre part, d'un réseau, qui implique des participants indépendants entre eux, c'est-à-dire pouvant fonctionner de manière autonome, et qui comprend plusieurs canaux permettant des communications simultanées.
vignette|alt=Vue des trois sous-ensembles composant un bus : données, adresse et contrôle|Décomposition fonctionnelle d'un bus
Un bus est un système de transfert de données entre plusieurs unités fonctionnelles de traitement de données par l'intermédiaire d'une voie de transmission commune, dans lequel les composants ne prennent aucune part à la transmission des données entre les autres participants.
Cette définition implique que les données doivent s'accompagner d'une identification du composant auquel elles sont destinées, qu'on appelle par métaphore l’adresse de destination, et d'une commande indiquant le type du transfert, notamment pour indiquer si ce composant doit recevoir les données ou les transmettre. On peut ainsi décomposer le bus en trois sous-ensembles logiques :
les données, soit le message proprement dit ;
les adresses, qui permettent d'identifier les composants qui partagent les données ;
le contrôle, un ensemble de signaux identifiant le type d'action : lecture ou écriture, taille du message.
Ces trois groupes sont communément appelés bus (bus d'adresse, bus de données, bus de contrôle). Physiquement, ils peuvent être des bus au sens électronique du terme, c'est-à-dire être portés par des conducteurs indépendants, ou être réalisés d'une autre manière, par exemple par multiplexage temporel sur un seul conducteur ; un bus informatique les combine en un seul dispositif pour transférer des données entre plusieurs composants.