A canonic interpretive program form for measuring "ideal" HLL architectures
Michael J. Flynn · ACM SIGARCH Computer Architecture News · 1978
Over the past several years our group has become increasingly interested in the notion of an "ideal" machine. Ideal with respect to some specified higher level language (HLL) environment. Initially, much of the focus of the work was on traditional machines: trying to identify and factor out architectural instructions and artifacts in programs from functional instructions. For example, the existence of load or store accumulator instructions in a program representation are largely architectural since they specify a movement among the storage resources of a system rather than a movement required in the original source program. We found it useful at the time to define three types of instructions:(1) M-type instructions or memory partition movement instructions such as the aforementioned load and store instructions. These instructions move data within the storage hierarchy.(2) P-instructions or procedural instructions performing operations associated with instruction sequencing: branch, compare, test, etc.(3) F-instructions are the functional instructions which actually transform a datum. These would include arithmetic operations as well as logical and shifting operations.