On Mon, 06 Mar 2006 23:35:30 +0000, Neil Nelson rearranged some electrons to form:
There are many ways... JTAG bus, SPI, etc. Most flavors of microcontrollers can be put into a mode where they can receive binary information and store it in some type of on-board non-volatile memory, and then execute it. This short program (called a bootloader) can then load a larger program. It's a simple concept that is used all the time.
Your Apple boots the same way... how do you think that MAC OS X gets loaded into your computer's RAM? It isn't there when you turn the power on. A small bit of code built into a ROM on the motherboard loads a small program from the first sector of the disk, which in turn loads a larger program, and so on.