### A good answer might be:

A byte.

# Addresses

Each byte of main storage has an address. Most modern processors use 32-bit addresses, so there are 232 possible addresses. Think of main storage as if it were an array:

    byte[0x00000000 ... 0xFFFFFFFF] mainStorage;

A main storage address is an index into memory. A 32-bit address is the address of a single byte. Thirty-two wires of the bus contain an address (there many more bus wires for timing and control).

Sometimes people talk about addresses like 0x2000, which looks like a pattern of just 16 bits. But this is just an abbreviation for the full 32-bit address. The actual address is 0x00002000.

Older MIPS processsors, the R2000 (designed in 1985) and the R3000, use 32-bit addresses. Recent MIPS processors (from 1991 to present) use 64-bit addresses. Processor chips from Intel will have 64-bit addresses in the near future.

The assembly language of this course is for the MIPS 3000 chip, so we will use 32-bit addresses. The assembly language of the recent MIPS chips is similar. For embedded systems programming, 32-bit addresses is often more than enough, so the 32-bit chips are still used.

### QUESTION 5:

What is the hexadecimal name for the 32-bit pattern that consists of all 1 bits? (Hint: look at the picture.)