1. A method of optimizing the instruction set of a user-configurable and extendable digital processor having a base instruction set and an extension instruction set, comprising: providing a program having a plurality of different instruction types; determining the frequency of each of said instruction types from said base instruction set; determining the number and type of instructions necessary for correct instruction set execution based at least in part on said act of determining the frequency; and creating a compressed instruction set based at least in part on said act of determining; wherein said digital processor includes an extension logic unit adapted to execute at least one extension instruction of said extension instruction set; and wherein the act of creating a compressed instruction set comprises selecting one or more instructions having the greatest frequency of occurrence, said selected one or more instructions permitting said program to be compiled with a predetermined size.