In order to be recognized by an operating system and programs, input and output devices attached to a computer system require unique identifications in memory. These unique identifications are called memory addresses. They are also referred to as I/O addresses and I/O port addresses.
It is likely that you will encounter memory address questions on the exam. In a question such as “Which address does a particular device use?”, the address in question is the memory address. Table 18.5 identifies memory address assignments. (Memorize this table.)
Memory Address | Device |
---|---|
00F0 | Math coprocessor |
060h | Keyboard controller |
170h | Secondary IDE hard drive controller |
1F0h | Primary IDE hard drive controller |
220h | Sound card |
300h | NIC |
330h | SCSI adapter |
3F2h | Floppy drive controller |
3F8h | COM1 |
2F8h | COM2 |
3E8h | COM3 |
2E8h | COM4 |
378h | LPT1 |
278h | LPT2 |
C000-C7FFF | Video adapter (memory address) |
Devices attached to the motherboard perform I/O operations by accepting instructions sent to them by operating systems and programs. The instruction sets are first sent to preassigned unique memory addresses or memory address ranges that represent each attached device. Devices require different amounts of memory for processing. The size of memory allocated to a device’s memory address can vary. The average device in a system uses 4, 8, or 32 bytes of memory address space. A video card, which requires significant amounts of memory to process output, may need more memory space assigned to its I/O address than a mouse would. The bus architecture of a device is the determining factor for the amount of memory space allocated to it.
Many memory addresses are available in a typical computer system. However, an I/O memory address conflict may occur if a device attempts to use the same memory address space already assigned to another device. It is possible to change a device’s I/O address by a process called memory-mapped I/O. Once a device is mapped to a legitimate I/O address, the CPU can recognize it.