From Wikipedia: http://en.wikipedia.org/wiki/Network_card#Purpose
Every Ethernet network controller has a unique 48-bit serial number called a MAC address, which is stored in read-only memory. Every computer on an Ethernet network must have at least one controller. Normally it is safe to assume that no two network controllers will share the same address, because controller vendors purchase blocks of addresses from the Institute of Electrical and Electronics Engineers (IEEE) and assign a unique address to each controller at the time of manufacture.
Since MAC addresses are assigned at the time of manufacture and stored in read-only memory, how is it still possible to change a MAC address on some computers?