I/O Address

An I/O address is a numeric identifier that a computer's CPU uses to communicate with a peripheral. Every I/O port on a computer, like a USB port, Ethernet jack, and HDMI port, has a unique address that differentiates it from every other port. Separate I/O addresses help the CPU know which peripheral is which and interact with them directly.

When a program running on a computer's CPU needs to communicate directly with a peripheral, it sends commands and data to that peripheral's I/O address. The peripheral can respond by sending information back to the computer's CPU at that same address. For example, when you print a document, the CPU forwards the document and print settings to the printer's I/O address, where the printer can then process that request and print the document.

Early computers often mapped I/O ports using fixed addresses based on the type of I/O port — for example, the standard address for a computer's first serial port was always 0x03F8. These addresses were separate from system memory and required unique CPU instructions to send data to and from I/O devices. Modern computers now use a more efficient method called memory-mapped I/O that assigns addresses to I/O ports from the same address space as the main system memory. Sharing that address space allows any CPU instruction that accesses system memory to also access I/O devices. Since the operating system now manages I/O addresses, applications can use system APIs to interact with peripherals instead of sending data to specific, pre-defined addresses — drastically increasing reliability and reducing the frequency of conflicts.

Updated July 20, 2023 by Brian P.

quizTest Your Knowledge

What signal tells a CPU to stop its current process and switch to a higher-priority task?

A
RPC
0%
B
API
0%
C
IRQ
0%
D
SMB
0%
Correct! Incorrect!     View the IRQ definition.
More Quizzes →

The Tech Terms Computer Dictionary

The definition of I/O Address on this page is an original definition written by the TechTerms.com team. If you would like to reference this page or cite this definition, please use the green citation links above.

The goal of TechTerms.com is to explain computer terminology in a way that is easy to understand. We strive for simplicity and accuracy with every definition we publish. If you have feedback about this definition or would like to suggest a new technical term, please contact us.

Sign up for the free TechTerms Newsletter

How often would you like to receive an email?

You can unsubscribe or change your frequency setting at any time using the links available in each email.

Questions? Please contact us.