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

Przejdź do nawigacji Przejdź do wyszukiwania
brak opisu edycji
Nie podano opisu zmian
Nie podano opisu zmian
 
(Nie pokazano 11 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 (dozwolone tylko przy pracy systemu operacyjnego) 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:
Linia 8: Linia 8:
** B-modyfikacja: +0,3µs
** B-modyfikacja: +0,3µs
** D-modyfikacja: +1,05µs
** D-modyfikacja: +1,05µs
** argument w drugim słowie rozkazu: +0,85µ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 52: Linia 53:
|}
|}


=== 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 63: Linia 64:
| 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 118: Linia 119:
|}
|}


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


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


=== 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 168: Linia 169:
|}
|}


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


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


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


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


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


{| class="wikitable"
{| class="wikitable"
Linia 247: Linia 248:
| 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 253: Linia 254:
| 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 263: Linia 264:
|}
|}


=== 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 288: Linia 303:
|}
|}


=== 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 313: Linia 328:
|}
|}


=== 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 338: Linia 353:
|}
|}


=== 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