A good answer might be:

No. Potentially any byte of main memory can hold part of a program or part of some data.

Main Memory

In practice, data and instructions are often placed in different sections of memory, but this is a matter of software organization, not a hardware requirement. Also, most computers have special sections of memory that permanently hold programs (firmware stored in ROM), and other sections that are permanently used for special purposes.

Main memory (also called main storage, or just memory) holds the bit patterns of machine instruction and the bit patterns of data. Memory chips and the electronics that controls them are concerned only with saving bit patterns and returning them when requested. No distinction is made between bit patterns that are intended as instructions and bit patterns that are intended as data. The amount of memory on a system is often described in terms of:

Kilobyte: 210 = 1024 bytes.
Megabyte: 220 = 1024 Kilobytes
Gigabyte: 230 = 1024 Megabytes
Terabyte: 240 = 1024 Gigabytes

Main memory these days (Summer 2001) ranges in capacity from 32 Meg to 512 Meg. Hard disks and other secondary storage devices are ten or hundreds of Gig. Backup storage comes in sizes as large as several terabytes.

QUESTION 4:

What is (on most computers) the smallest addressable unit of memory?