A microcontroller has three types of memory; a ROM in which is recorded a program, a programmable first non-volatile memory, and a second non-volatile memory having programmable address data and instruction data zones. When the result of a detection performed by a comparator shows that address data sent...http://www.google.com.au/patents/US5426746?utm_source=gb-gplus-sharePatent US5426746 - Microcontroller with program recomposing function