Skorowidz kodów rozkazów: Różnice pomiędzy wersjami

Przejdź do nawigacji Przejdź do wyszukiwania
Nie podano opisu zmian
(Nie pokazano 13 pośrednich wersji utworzonych przez tego samego użytkownika)
Linia 1: Linia 1:
Skorowidz rozkazów przedstawia rozkazy uporządkowane względem rosnących kodów rozkazów, zachowując podział na grupy typów rozkazów.
Skorowidz rozkazów przedstawia rozkazy uporządkowane względem rosnących kodów rozkazów, zachowując podział na grupy typów rozkazów.
Rozkazy nielegalne oznaczono kolorem czerwonym.
Rozkazy nielegalne (dozwolone tylko przy pracy systemu operacyjnego) oznaczono kolorem czerwonym. Rozkazy o kodach oktalnych mniejszych od 20 są niedozwolone i traktowane jako rozkazy nieefektywne (patrz: [[Wykonanie rozkazu]])


=== Rozkazy dwuargumentowe z argumentem normalnym ===
== Objaśnienia ==
* Czasy wykonania obowiązują dla minikomputera zbudowanego z wykorzystaniem elementów scalonych typu H, wyposażonego w pamięć operacyjną rdzeniową z czasem cyklu 1,1µs.
* Modyfikacje rozkazu wydłużają czas jego wykonania:
** PRE-modyfikacja: +0,3µs
** B-modyfikacja: +0,3µs
** D-modyfikacja: +1,05µs
* Czasy wykonania zależą od różnych czynników, co oznaczono w tabeli:
** * - czas zależny od argumentów
** P - czas zależny od przeskoku
** R - czas zależny od reakcji jednostek sterujących urządzeniami zewnętrznymi
** V - czas różny, zależny od extrakodu


== Rozkazy dwuargumentowe z argumentem normalnym ==
{| class="wikitable"
{| class="wikitable"
! colspan="2" | Kod rozkazu !! colspan="4" | Pola rozkazu !! rowspan="2" | Mnemonik !! rowspan="2" | czas<br>[&micro;s]
! colspan="2" | Kod rozkazu !! colspan="4" | Pola rozkazu !! rowspan="2" | Mnemonik !! rowspan="2" | czas<br>[&micro;s]
Linia 41: Linia 52:
|}
|}


=== Rozkazy bez pierwszego argumentu z argumentem normalnym (grupa F/D) ===
== Rozkazy bez pierwszego argumentu z argumentem normalnym (grupa F/D) ==


{| class="wikitable"
{| class="wikitable"
Linia 52: Linia 63:
| 37 || 011 111 || D || 001 || BBB || CCC || align="center" | SD || 5,2
| 37 || 011 111 || D || 001 || BBB || CCC || align="center" | SD || 5,2
|-
|-
| 37 || 011 111 || D || 010 || BBB || CCC || align="center" | MW || 3,5&divide;11,9<sup>&#9733;</sup>
| 37 || 011 111 || D || 010 || BBB || CCC || align="center" | MW || 3,5&divide;11,9*
|-
|-
| 37 || 011 111 || D || 011 || BBB || CCC || align="center" | DW || 4,9&divide;15,3<sup>&#9733;</sup>
| 37 || 011 111 || D || 011 || BBB || CCC || align="center" | DW || 4,9&divide;15,3*
|-
|-
| 37 || 011 111 || D || 100 || BBB || CCC || align="center" | AF || 5,4&divide;19<sup>&#9733;</sup>
| 37 || 011 111 || D || 100 || BBB || CCC || align="center" | AF || 5,4&divide;19*
|-
|-
| 37 || 011 111 || D || 101 || BBB || CCC || align="center" | SF || 5,4&divide;19<sup>&#9733;</sup>
| 37 || 011 111 || D || 101 || BBB || CCC || align="center" | SF || 5,4&divide;19*
|-
|-
| 37 || 011 111 || D || 110 || BBB || CCC || align="center" | MF || 6,8&divide;29<sup>&#9733;</sup>
| 37 || 011 111 || D || 110 || BBB || CCC || align="center" | MF || 6,8&divide;29*
|-
|-
| 37 || 011 111 || D || 111 || BBB || CCC || align="center" | DF || 6,8&divide;30<sup>&#9733;</sup>
| 37 || 011 111 || D || 111 || BBB || CCC || align="center" | DF || 6,8&divide;30*
|-
|-
|}
|}


=== Rozkazy dwuargumentowe z argumentem normalnym c.d. ===
== Rozkazy dwuargumentowe z argumentem normalnym c.d. ==


{| class="wikitable"
{| class="wikitable"
Linia 107: Linia 118:
|}
|}


=== Rozkazy z krótkim argumentem (grupa KA1) ===
== Rozkazy z krótkim argumentem (grupa KA1) ==


{| class="wikitable"
{| class="wikitable"
Linia 132: Linia 143:
|}
|}


=== Rozkazy z krótkim argumentem - rozkazy skoków (grupa JS) ===
== Rozkazy z krótkim argumentem - rozkazy skoków (grupa JS) ==


{| class="wikitable"
{| class="wikitable"
Linia 157: Linia 168:
|}
|}


=== Rozkazy z argumentem bajtowym (grupa KA2) ===
== Rozkazy z argumentem bajtowym (grupa KA2) ==


{| class="wikitable"
{| class="wikitable"
Linia 174: Linia 185:
|}
|}


=== Rozkazy bez drugiego argumentu (grupa C) ===
== Rozkazy bez drugiego argumentu (grupa C) ==


{| class="wikitable"
{| class="wikitable"
Linia 201: Linia 212:
| 72 || 111 010 || 0 || AAA || 001 || 001 || align="center" | RPC || 1,3
| 72 || 111 010 || 0 || AAA || 001 || 001 || align="center" | RPC || 1,3
|-
|-
| 72 || 111 010 || T || AAA || 010 || TTT || align="center" | SHC || 1,9&divide;3,5<sup>&#9733;</sup>
| 72 || 111 010 || T || AAA || 010 || TTT || align="center" | SHC || 1,9&divide;3,5*
|-
|-
| 72 || 111 010 || 1 || AAA || 000 || 000 || align="center" | RKY || 1,4
| 72 || 111 010 || 1 || AAA || 000 || 000 || align="center" | RKY || 1,4
Linia 225: Linia 236:
|}
|}


=== Rozkazy bezargumentowe (grupa S) ===
== Rozkazy bezargumentowe (grupa S) ==


{| class="wikitable"
{| class="wikitable"
Linia 236: Linia 247:
| 73 || 111 011 || - || 001 || --- || --- || align="center" | <span style="color:red">MCL</span> || -
| 73 || 111 011 || - || 001 || --- || --- || align="center" | <span style="color:red">MCL</span> || -
|-
|-
| 73 || 111 011 || - || 010 || --- || -00 || align="center" | <span style="color:red">CIT</span> || -
| 73 || 111 011 || - || 010 || --- || -11 || align="center" | <span style="color:red">SIT</span> || -
|-
|-
| 73 || 111 011 || - || 010 || --- || -01 || align="center" | <span style="color:red">SIL</span> || -
| 73 || 111 011 || - || 010 || --- || -01 || align="center" | <span style="color:red">SIL</span> || -
Linia 242: Linia 253:
| 73 || 111 011 || - || 010 || --- || -10 || align="center" | <span style="color:red">SIU</span> || -
| 73 || 111 011 || - || 010 || --- || -10 || align="center" | <span style="color:red">SIU</span> || -
|-
|-
| 73 || 111 011 || - || 010 || --- || -11 || align="center" | <span style="color:red">SIT</span> || -
| 73 || 111 011 || - || 010 || --- || -00 || align="center" | <span style="color:red">CIT</span> || -
|-
|-
| 73 || 111 011 || 0 || 011 || --- || --- || align="center" | <span style="color:red">GIU</span> || -
| 73 || 111 011 || 0 || 011 || --- || --- || align="center" | <span style="color:red">GIU</span> || -
Linia 252: Linia 263:
|}
|}


=== Rozkazy bez pierwszego argumentu z argumentem normalnym - rozkazy skoku (grupa J) ===
Rozkazy bezargumentowe grupy S [[Modyfikacje sprzętowe procesora|dodane w procesorze MX-16]]:
 
{| class="wikitable"
! colspan="2" | Kod rozkazu !! colspan="4" | Pola rozkazu !! rowspan="2" | Mnemonik !! rowspan="2" | czas<br>[&micro;s]
|-
! oct !! bin !! D !! A !! B !! C
|-
| 73 || 111 011 || - || 101 || --- || --- || align="center" | <span style="color:red">CRON</span> || -
|-
| 73 || 111 011 || 0 || 010 || --- || 1-- || align="center" | <span style="color:red">SINT</span> || -
|-
| 73 || 111 011 || 1 || 010 || --- || 1-- || align="center" | <span style="color:red">SIND</span> || -
|}
 
== Rozkazy bez pierwszego argumentu z argumentem normalnym - rozkazy skoku (grupa J) ==


{| class="wikitable"
{| class="wikitable"
Linia 277: Linia 302:
|}
|}


=== Rozkazy bez pierwszego argumentu z argumentem normalnym - rozkazy umieszczania grupowego (grupa L) ===
== Rozkazy bez pierwszego argumentu z argumentem normalnym - rozkazy umieszczania grupowego (grupa L) ==


{| class="wikitable"
{| class="wikitable"
Linia 302: Linia 327:
|}
|}


=== Rozkazy bez pierwszego argumentu z argumentem normalnym - rozkazy pamiętania grupowego (grupa G) ===
== Rozkazy bez pierwszego argumentu z argumentem normalnym - rozkazy pamiętania grupowego (grupa G) ==


{| class="wikitable"
{| class="wikitable"
Linia 327: Linia 352:
|}
|}


=== Rozkazy bez pierwszego argumentu z argumentem normalnym - rozkazy różne (grupa B/N) ===
== Rozkazy bez pierwszego argumentu z argumentem normalnym - rozkazy różne (grupa B/N) ==


{| class="wikitable"
{| class="wikitable"

Menu nawigacyjne