Oisc
OISC
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2025/11/03 13:32 UTC 版)
|
|
この記事は英語版の対応するページを翻訳することにより充実させることができます。(2021年2月)
翻訳前に重要な指示を読むには右にある[表示]をクリックしてください。
|
OISC(One-instruction set computer)は、命令が唯一のコンピュータである。 唯一の命令の一例としてSubleq(subtract and branch if less or equal to zero、減算して0以下なら分岐)がある。 いくつかのOISCは、チューリング完全である。URISC(Ultimate RISC、究極のRISC)とも[1]。
利用
OISCは、実用には向いていないといえる。 いくつかの難解プログラミング言語としても実装されている。
OISCを使用しプログラミングを行う際は、初期の設定やメモリマッピングも重要である。
Subleq
Subleq命令は、3つのパラメータを持つ。Subleq(a,b,c)と表現する。Subleqはアドレスbの内容からアドレスaの内容を減算し、その結果をアドレスbに格納し、結果が0以下ならばcに制御を移す。
命令がひとつしかないのでオペコードは必要ない(0ビット)。パラメータ a, b, c を3個の連続したワードであらわす。以下に一例を示す。
ADDRESS a b c
ADDRESS 00: 3 4 6
ADDRESS 03: 7 7 7
ADDRESS 06: 3 4 0
このコードの場合、以下の処理が行われる。
- 0から実行する
- アドレス4の内容(7) − アドレス3の内容(7)を計算し、結果の0をアドレス4に格納
- 結果が0以下なので、6に移動
- アドレス4の内容(0) − アドレス3の内容(7)を計算し、結果の-7をアドレス4に格納
- 結果が0以下なので、0に移動
- 最初から繰り返し
また、Subleqのソースコードを書く際に、ソースコードを見やすくするために構文を少し変える場合もある。
例
その他のOISCの例である。
- BitBitJump
- ByteByteJump
- Blues Machine
- DJN
注
- ^ URISC: The Ultimate Reduced Instruction Set Computer doi:10.1177/002072098802500408
関連項目
外部リンク
OISC
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/08/25 23:44 UTC 版)
「難解プログラミング言語」の記事における「OISC」の解説
OISCは唯一つの命令をサポートするような計算機のことである。
※この「OISC」の解説は、「難解プログラミング言語」の解説の一部です。
「OISC」を含む「難解プログラミング言語」の記事については、「難解プログラミング言語」の概要を参照ください。
- OISCのページへのリンク