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

Przejdź do nawigacji Przejdź do wyszukiwania
Nie podano opisu zmian
(Nie pokazano 12 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]])


Uwagi do czasu wykonania rozkazów:
== 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.
* 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:
* Modyfikacje rozkazu wydłużają czas jego wykonania:
** PRE-modifukacja: +0,3µs
** PRE-modyfikacja: +0,3µs
** B-modifukacja: +0,3µs
** B-modyfikacja: +0,3µs
** D-modifukacja: +1,05µs
** D-modyfikacja: +1,05µs
* Czasy wykonania zależą od różnych czynników, co oznaczono w tabeli:
* Czasy wykonania zależą od różnych czynników, co oznaczono w tabeli:
** ★ - czas zależny od argumentów
** * - czas zależny od argumentów
** P - czas zależny od przeskoku
** P - czas zależny od przeskoku
** R - czas zależny od reakcji jednostek sterujących urządzeniami zewnętrznymi
** R - czas zależny od reakcji jednostek sterujących urządzeniami zewnętrznymi
** V - czas różny, zależny od extrakodu
** V - czas różny, zależny od extrakodu


=== Rozkazy dwuargumentowe z argumentem normalnym ===
== 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 53: 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 64: 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 119: Linia 118:
|}
|}


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


{| class="wikitable"
{| class="wikitable"
Linia 144: 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 169: Linia 168:
|}
|}


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


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


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


{| class="wikitable"
{| class="wikitable"
Linia 213: 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 237: Linia 236:
|}
|}


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


{| class="wikitable"
{| class="wikitable"
Linia 248: 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 254: 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 264: 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 289: 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 314: 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 339: 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