Un computer set de instrucțiuni

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare

Uno One Instruction Set Computer ( OISC ) este o mașină Turing care folosește o singură instrucțiune și, prin urmare, nu necesită un cod de operare . OISC sunt de obicei utilizate în predare. Un model de computer comercial care folosește un OISC este MAX's MAXQ [1] , care folosește doar instrucțiunea MOVE .

Tipuri de OISC

Există diverse posibilități de a crea un OISC complet Turing .

Scădeți și săriți dacă ...

Cele mai utilizate în predare sunt OISC bazat pe SUBLEQ (scădeți și săriți dacă ≤ 0 - SUB mai puțin echivalent) și SUBNEG sau SBN (scădeți și săriți dacă este negativ - SUB NEG). Implementările sunt, în pseudo cod:

 subleq '' a '' , '' b '' , '' c '' ; Mem ['' b ''] = Mem ['' b ''] - Mem ['' a '']
                             ; dacă (Mem ['' b ''] ≤ 0) mergeți la '' c ''
 
subneg '' a '' , '' b '' , '' c '' ; Mem ['' b ''] = Mem ['' b ''] - Mem ['' a '']
                             ; if (Mem ['' b ''] <0) merge la '' c ''

Scădeți și omiteți dacă reportarea ( RSSB )

În engleză Reverse Subtract și Skip if Borrow : acumulatorul este scăzut din locația de memorie curentă. Dacă valoarea este negativă, săriți următoarea afirmație. Pointerul către instrucțiune ( contorul de program ) este la adresa 0, acumulatorul la 1.

 RSSB '' la '' ; Mem ['' a ''] = Mem ['' a ''] - Mem ['' 1 '']
           ; Mem ['' 1 ''] = Mem ['' a '']
           ; if (Mem ['' 1 ''] <0) Mem ['' 1 ''] = Mem ['' 1 ''] + 1

Mutare

O „mașină de mutat”, numită și CPU, o arhitectură declanșată de transport [2] folosește doar instrucțiunea de mutare, care operează direct pe memorie.

                          
mutați '' a '' în '' b '' ; Mem ['' b '']: = Mem ['' a '']

Uneori este scris ca

     
'' a '' - > '' b '' ; Mem ['' b '']: = Mem ['' a '']

Operațiile aritmetice sunt efectuate printr-o ALU , care pentru adresele a mai multor cuvinte poate fi înlocuită cu tabele de căutare [3] , în timp ce salturile sunt efectuate prin maparea contorului de programe în memorie. Un exemplu a fost construit din automatul celular Wireworld [4] . Un eseu despre această arhitectură și cum funcționează a fost scris de Douglas W. Jones [5] [6] . MAX's MAXQ folosește și acest design.

BitBitJump

BitBitJump este similar cu scăderea și saltarea, doar că funcționează prin copierea de biți singuri, mai degrabă decât prin scăderea adreselor de memorie : de exemplu, codul

 19 20 8
0 0 -1

este reprezentat în 8 biți (MSBF) ca

 [00010011] [00010100] [00001000]
[00000000] [00000000] [11111111]

Prima instrucțiune copiază bitul 19 în 20, deci

 [00010011] [00010100] [00011000]
[00000000] [00000000] [11111111]

memoria devine acum

 19 20 24
0 0 -1

Saltul la 24 biți este efectuat, adică a doua linie, care copiază bitul 0 pe sine și se termină (saltul la adrese negative pune capăt execuției).

Notă

Bibliografie

Elemente conexe

linkuri externe

Controlul autorității GND ( DE ) 4761222-8
Informatică Portal IT : accesați intrările Wikipedia care se ocupă cu IT