The address bus contains 16, 20, 24, or 32 parallel signal lines. On these lines the CPU sends the address of the memory location that is to be written to or read from. The number of address lines fined out the number of memory locations that the CPU may address. If the CPU has N address lines, then it may directly address 2N memory locations. For instance, a CPU with 16 address lines can address 216 or 65,536 memory locations, a CPU with 20 address lines can address 220 or 1,048,576 locations, and a CPU with 24 address lines may address 2 24or 16,777,216 locations. While the CPU reads data from or writes data to a port, it sends the port address on the address bus.