abstract machine that uses only one instruction

6 min read
Article URL: https://en.wikipedia.org/wiki/One-instruction_set_computer Comments URL: https://news.ycombinator.com/item?id=26763905 Points: 1 # Comments: 0
Abstract machine that uses only one instruction

Not to be confused with 1-bit

A one-instruction set computer (OISC), sometimes called an ultimate reduced instruction set computer (URISC), is an abstract machine that uses only one instruction – obviating the need for a machine language opcode.[1][2][3] With a judicious choice for the single instruction and given infinite resources, an OISC is capable of being a universal computer in the same manner as traditional computers that have multiple instructions.[2]:55 OISCs have been recommended as aids in teaching computer architecture[1]:327[2]:2 and have been used as computational models in structural computing research.[3]

Machine architecture [ edit ]

In a Turing-complete model, each memory location can store an arbitrary integer, and – depending on the model[clarification needed] – there may be arbitrarily many locations. The instructions themselves reside in memory as a sequence of such integers.

There exists a class of universal computers with a single instruction based on bit manipulation such as bit copying or bit inversion. Since their memory model is finite, as is the memory structure used in real computers, those bit manipulation machines are equivalent to real computers rather than to Turing machines.[4]

Currently known OISCs can be roughly separated into three broad categories:

Bit-manipulating machines

Transport triggered architecture machines

Arithmetic-based Turing-complete machines

Bit-manipulating machines [ edit ]

Bit-manipulating machines are the simplest class.

BitBitJump [ edit ]

A bit copying machine, called BitBitJump, copies one bit in memory and passes the execution unconditionally to the address specified by one of the operands of the instruction. This process turns out to be capable of universal computation (i.e. being able to execute any algorithm and to interpret any other universal machine) because copying bits can conditionally modify the code that will be subsequently…
Contributors to Wikimedia projects
Read full article