1. A method of simulating a processor system by running system code that simulates the system on a host processor, in which the system code has two or more execution privilege levels or modes and is translated at run time to a form required by the host processor; wherein all instructions are mapped to a native instruction set of the host processor using two or more different code dictionaries, each execution privilege level or mode being associated with a different code dictionary.