Zmiany

Przejdź do nawigacji Przejdź do wyszukiwania
Dodane 11 219 bajtów ,  21:45, 13 lis 2021
brak opisu edycji
Linia 1: Linia 1:
=== Rozkazy dwuargumentowe z argumentem normalnym ===
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 o kodach oktalnych mniejszych od 20 są niedozwolone i traktowane jako rozkazy nieefektywne (patrz: [[Wykonanie rozkazu]])
 
== 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
** argument w drugim słowie rozkazu: +0,85µ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"
! colspan="2" | Kod rozkazu !! colspan="4" | Pola rozkazu !! rowspan="2" | Mnemonik !! rowspan="2" | czas<br>[&micro;s]
|-
! oct !! bin !! D !! A !! B !! C
|-
| 20 || 010 000 || D || AAA || BBB || CCC || align="center" | LW || 1,65
|-
| 21 || 010 001 || D || AAA || BBB || CCC || align="center" | TW || 1,65
|-
| 22 || 010 010 || D || AAA || BBB || CCC || align="center" | LS || 2,6
|-
| 23 || 010 011 || D || AAA || BBB || CCC || align="center" | RI || 2,6
|-
| 24 || 010 100 || D || AAA || BBB || CCC || align="center" | RW || 2,2
|-
| 25 || 010 101 || D || AAA || BBB || CCC || align="center" | PW || 2,2
|-
| 26 || 010 110 || D || AAA || BBB || CCC || align="center" | RJ || 1,7
|-
| 27 || 010 111 || D || AAA || BBB || CCC || align="center" | IS || 2,8&divide;4,2<sup>P</sup>
|-
| 30 || 011 000 || D || AAA || BBB || CCC || align="center" | BB || 1,8&divide;3,2<sup>P</sup>
|-
| 31 || 011 001 || D || AAA || BBB || CCC || align="center" | BM || 2,8&divide;4,2<sup>P</sup>
|-
| 32 || 011 010 || D || AAA || BBB || CCC || align="center" | BS || 1,8&divide;3,2<sup>P</sup>
|-
| 33 || 011 011 || D || AAA || BBB || CCC || align="center" | BC || 1,8&divide;3,2<sup>P</sup>
|-
| 34 || 011 100 || D || AAA || BBB || CCC || align="center" | BN || 1,8&divide;3,2<sup>P</sup>
|-
| 35 || 011 101 || D || AAA || BBB || CCC || align="center" | OU || 2&divide;5<sup>R</sup>
|-
| 36 || 011 110 || D || AAA || BBB || CCC || align="center" | IN || 2&divide;5<sup>R</sup>
|-
|}
 
== Rozkazy bez pierwszego argumentu z argumentem normalnym (grupa F/D) ==
 
{| 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
|-
| 37 || 011 111 || D || 000 || BBB || CCC || align="center" | AD || 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*
|-
| 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*
|-
| 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*
|-
| 37 || 011 111 || D || 111 || BBB || CCC || align="center" | DF || 6,8&divide;30*
|-
|}
 
== Rozkazy dwuargumentowe z argumentem normalnym c.d. ==


{| class="wikitable"
{| class="wikitable"
! colspan="2" | Kod rozkazu !! colspan="3" | Pola rozkazu
! colspan="2" | Kod rozkazu !! colspan="4" | Pola rozkazu !! rowspan="2" | Mnemonik !! rowspan="2" | czas<br>[&micro;s]
|-
! oct !! bin !! D !! A !! B !! C
|-
| 40 || 100 000 || D || AAA || BBB || CCC || align="center" | AW || 1,75
|-
| 41 || 100 001 || D || AAA || BBB || CCC || align="center" | AC || 1,75
|-
| 42 || 100 010 || D || AAA || BBB || CCC || align="center" | SW || 1,75
|-
| 43 || 100 011 || D || AAA || BBB || CCC || align="center" | CW || 1,75
|-
| 44 || 100 100 || D || AAA || BBB || CCC || align="center" | OR || 1,7
|-
| 45 || 100 101 || D || AAA || BBB || CCC || align="center" | OM || 3,4
|-
| 46 || 100 110 || D || AAA || BBB || CCC || align="center" | NR || 1,7
|-
| 47 || 100 111 || D || AAA || BBB || CCC || align="center" | NM || 3,4
|-
|-
! oct !! bin !! D !! A !! B !! C !! Mnemonik !! czas
| 50 || 101 000 || D || AAA || BBB || CCC || align="center" | ER || 1,7
|-
|-
| 20 || 010 000 || D || AAA || BBB || CCC || align="center" | LW ||
| 51 || 101 001 || D || AAA || BBB || CCC || align="center" | EM || 3,5
|-
|-
| 21 || 010 001 || D || AAA || BBB || CCC || align="center" | TW ||
| 52 || 101 010 || D || AAA || BBB || CCC || align="center" | XR || 1,8
|-
|-
| 22 || 010 010 || D || AAA || BBB || CCC || align="center" | LS ||
| 53 || 101 011 || D || AAA || BBB || CCC || align="center" | XM || 3,5
|-
|-
| 23 || 010 011 || D || AAA || BBB || CCC || align="center" | RI ||
| 54 || 101 100 || D || AAA || BBB || CCC || align="center" | CL || 1,8
|-
|-
| 24 || 010 100 || D || AAA || BBB || CCC || align="center" | RW ||
| 55 || 101 101 || D || AAA || BBB || CCC || align="center" | LB || 3,8
|-
|-
| 25 || 010 101 || D || AAA || BBB || CCC || align="center" | PW ||
| 56 || 101 110 || D || AAA || BBB || CCC || align="center" | RB || 4,4
|-
|-
| 26 || 010 110 || D || AAA || BBB || CCC || align="center" | RJ ||
| 57 || 101 111 || D || AAA || BBB || CCC || align="center" | CB || 3,85
|-
|-
| 27 || 010 111 || D || AAA || BBB || CCC || align="center" | IS ||
|}
 
== Rozkazy z krótkim argumentem (grupa KA1) ==
 
{| class="wikitable"
! colspan="2" | Kod rozkazu !! colspan="4" | Pola rozkazu !! rowspan="2" | Mnemonik !! rowspan="2" | czas<br>[&micro;s]
|-
|-
| 30 || 011 000 || D || AAA || BBB || CCC || align="center" | BB ||
! oct !! bin !! D !! A !! B !! C
|-
|-
| 31 || 011 001 || D || AAA || BBB || CCC || align="center" | BM ||
| 60 || 110 000 || T || AAA || TTT || TTT || align="center" | AWT || 1,75
|-
|-
| 32 || 011 010 || D || AAA || BBB || CCC || align="center" | BS ||
| 61 || 110 001 || T || AAA || TTT || TTT || align="center" | TRB || 1,75&divide;3,15<sup>P</sup>
|-
|-
| 33 || 011 011 || D || AAA || BBB || CCC || align="center" | BC ||
| 62 || 110 010 || T || AAA || TTT || TTT || align="center" | IRB || 2,2
|-
|-
| 34 || 011 100 || D || AAA || BBB || CCC || align="center" | BN ||
| 63 || 110 011 || T || AAA || TTT || TTT || align="center" | DRB || 2,2
|-
|-
| 35 || 011 101 || D || AAA || BBB || CCC || align="center" | OU ||
| 64 || 110 100 || T || AAA || TTT || TTT || align="center" | CWT || 1,8
|-
|-
| 36 || 011 110 || D || AAA || BBB || CCC || align="center" | IN ||
| 65 || 110 101 || T || AAA || TTT || TTT || align="center" | LWT || 1,7
|-
| 66 || 110 110 || T || AAA || TTT || TTT || align="center" | LWS || 2,85
|-
| 67 || 110 111 || T || AAA || TTT || TTT || align="center" | RWS || 2,5
|-
|-
|}
|}


=== Rozkazy bez pierwszego argumentu z argumentem normalnym (grupa F/D) ===
== Rozkazy z krótkim argumentem - rozkazy skoków (grupa JS) ==


{| class="wikitable"
{| class="wikitable"
! colspan="2" | Kod rozkazu !! colspan="3" | Pola rozkazu
! colspan="2" | Kod rozkazu !! colspan="4" | Pola rozkazu !! rowspan="2" | Mnemonik !! rowspan="2" | czas<br>[&micro;s]
|-
! oct !! bin !! D !! A !! B !! C
|-
| 70 || 111 000 || T || 000 || TTT || TTT || align="center" | UJS || 2,0
|-
| 70 || 111 000 || T || 001 || TTT || TTT || align="center" | JLS || 2,0
|-
|-
! oct !! bin !! D !! A !! B !! C !! Mnemonik !! czas
| 70 || 111 000 || T || 010 || TTT || TTT || align="center" | JES || 2,0
|-
|-
| 37 || 011 111 || D || 000 || BBB || CCC || align="center" | AD ||
| 70 || 111 000 || T || 011 || TTT || TTT || align="center" | JGS || 2,0
|-
|-
| 37 || 011 111 || D || 001 || BBB || CCC || align="center" | SD ||
| 70 || 111 000 || T || 100 || TTT || TTT || align="center" | JVS || 2,0
|-
|-
| 37 || 011 111 || D || 010 || BBB || CCC || align="center" | MW ||
| 70 || 111 000 || T || 101 || TTT || TTT || align="center" | JXS || 2,0
|-
|-
| 37 || 011 111 || D || 011 || BBB || CCC || align="center" | DW ||
| 70 || 111 000 || T || 110 || TTT || TTT || align="center" | JYS || 2,0
|-
|-
| 37 || 011 111 || D || 100 || BBB || CCC || align="center" | AF ||
| 70 || 111 000 || T || 111 || TTT || TTT || align="center" | JCS || 2,0
|-
|-
| 37 || 011 111 || D || 101 || BBB || CCC || align="center" | SF ||
|}
 
== Rozkazy z argumentem bajtowym (grupa KA2) ==
 
{| class="wikitable"
! colspan="2" | Kod rozkazu !! colspan="4" | Pola rozkazu !! rowspan="2" | Mnemonik !! rowspan="2" | czas<br>[&micro;s]
|-
|-
| 37 || 011 111 || D || 110 || BBB || CCC || align="center" | MF ||
! oct !! bin !! D !! A !! B !! C
|-
|-
| 37 || 011 111 || D || 111 || BBB || CCC || align="center" | DF ||
| 71 || 111 001 || 0 || 0TT || TTT || TTT || align="center" | BLC || 1,7&divide;3,1<sup>P</sup>
|-
| 71 || 111 001 || 0 || 1TT || TTT || TTT || align="center" | EXL || V
|-
| 71 || 111 001 || 1 || 0TT || TTT || TTT || align="center" | BRC || 1,7&divide;3,1<sup>P</sup>
|-
| 71 || 111 001 || 1 || 1TT || TTT || TTT || align="center" | NRF || 3,8&divide;15,8
|-
|-
|}
|}


=== Rozkazy dwuargumentowe z argumentem normalnym ===
== Rozkazy bez drugiego argumentu (grupa C) ==


{| class="wikitable"
{| class="wikitable"
! colspan="2" | Kod rozkazu !! colspan="3" | Pola rozkazu
! colspan="2" | Kod rozkazu !! colspan="4" | Pola rozkazu !! rowspan="2" | Mnemonik !! rowspan="2" | czas<br>[&micro;s]
|-
! oct !! bin !! D !! A !! B !! C
|-
| 72 || 111 010 || 0 || AAA || 000 || 000 || align="center" | RIC || 1,4
|-
| 72 || 111 010 || 0 || AAA || 000 || 001 || align="center" | ZLB || 1,4
|-
|-
! oct !! bin !! D !! A !! B !! C !! Mnemonik !! czas
| 72 || 111 010 || 0 || AAA || 000 || 010 || align="center" | SXU || 1,35
|-
|-
| 40 || 100 000 || D || AAA || BBB || CCC || align="center" | AW ||
| 72 || 111 010 || 0 || AAA || 000 || 011 || align="center" | NGA || 1,65
|-
|-
| 41 || 100 001 || D || AAA || BBB || CCC || align="center" | AC ||
| 72 || 111 010 || 0 || AAA || 000 || 100 || align="center" | SLZ || 2,0
|-
|-
| 42 || 100 010 || D || AAA || BBB || CCC || align="center" | SW ||
| 72 || 111 010 || 0 || AAA || 000 || 101 || align="center" | SLY || 2,0
|-
|-
| 43 || 100 011 || D || AAA || BBB || CCC || align="center" | CW ||
| 72 || 111 010 || 0 || AAA || 000 || 110 || align="center" | SLX || 2,0
|-
|-
| 44 || 100 100 || D || AAA || BBB || CCC || align="center" | OR ||
| 72 || 111 010 || 0 || AAA || 000 || 111 || align="center" | SRY || 2,0
|-
|-
| 45 || 100 101 || D || AAA || BBB || CCC || align="center" | OM ||
| 72 || 111 010 || 0 || AAA || 001 || 000 || align="center" | NGL || 1,35
|-
|-
| 46 || 100 110 || D || AAA || BBB || CCC || align="center" | NR ||
| 72 || 111 010 || 0 || AAA || 001 || 001 || align="center" | RPC || 1,3
|-
|-
| 47 || 100 111 || D || AAA || BBB || CCC || align="center" | NM ||
| 72 || 111 010 || T || AAA || 010 || TTT || align="center" | SHC || 1,9&divide;3,5*
|-
|-
| 50 || 101 000 || D || AAA || BBB || CCC || align="center" | ER ||
| 72 || 111 010 || 1 || AAA || 000 || 000 || align="center" | RKY || 1,4
|-
|-
| 51 || 101 001 || D || AAA || BBB || CCC || align="center" | EM ||
| 72 || 111 010 || 1 || AAA || 000 || 001 || align="center" | ZRB || 1,4
|-
|-
| 52 || 101 010 || D || AAA || BBB || CCC || align="center" | XR ||
| 72 || 111 010 || 1 || AAA || 000 || 010 || align="center" | SXL || 1,35
|-
|-
| 53 || 101 011 || D || AAA || BBB || CCC || align="center" | XM ||
| 72 || 111 010 || 1 || AAA || 000 || 011 || align="center" | NGC || 1,65
|-
|-
| 54 || 101 100 || D || AAA || BBB || CCC || align="center" | CL ||
| 72 || 111 010 || 1 || AAA || 000 || 100 || align="center" | SVZ || 2,0
|-
|-
| 55 || 101 101 || D || AAA || BBB || CCC || align="center" | LB ||
| 72 || 111 010 || 1 || AAA || 000 || 101 || align="center" | SVY || 2,0
|-
|-
| 56 || 101 110 || D || AAA || BBB || CCC || align="center" | RB ||
| 72 || 111 010 || 1 || AAA || 000 || 110 || align="center" | SVX || 2,0
|-
|-
| 57 || 101 111 || D || AAA || BBB || CCC || align="center" | CB ||
| 72 || 111 010 || 1 || AAA || 000 || 111 || align="center" | SRX || 2,0
|-
|-
| 72 || 111 010 || 1 || AAA || 001 || 000 || align="center" | SRZ || 2,0
|-
| 72 || 111 010 || 1 || AAA || 001 || 001 || align="center" | LPC || 1,3
|-
|}


== Rozkazy bezargumentowe (grupa S) ==


{| 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 || - || 000 || --- || --- || align="center" | <span style="color:red">HLT</span> || -
|-
| 73 || 111 011 || - || 001 || --- || --- || align="center" | <span style="color:red">MCL</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 || --- || -10 || align="center" | <span style="color:red">SIU</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 || - || 100 || --- || --- || align="center" | <span style="color:red">LIP</span> || -
|-
| 73 || 111 011 || 1 || 011 || --- || --- || align="center" | <span style="color:red">GIL</span> || -
|-
|}
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"
! colspan="2" | Kod rozkazu !! colspan="4" | Pola rozkazu !! rowspan="2" | Mnemonik !! rowspan="2" | czas<br>[&micro;s]
|-
! oct !! bin !! D !! A !! B !! C
|-
| 74 || 111 100 || D || 000 || BBB || CCC || align="center" | UJ || 1,65
|-
| 74 || 111 100 || D || 001 || BBB || CCC || align="center" | JL || 1,65
|-
| 74 || 111 100 || D || 010 || BBB || CCC || align="center" | JE || 1,65
|-
| 74 || 111 100 || D || 011 || BBB || CCC || align="center" | JG || 1,65
|-
| 74 || 111 100 || D || 100 || BBB || CCC || align="center" | JZ || 1,65
|-
| 74 || 111 100 || D || 101 || BBB || CCC || align="center" | JM || 1,65
|-
| 74 || 111 100 || D || 110 || BBB || CCC || align="center" | JN || 1,65
|-
| 74 || 111 100 || D || 111 || BBB || CCC || align="center" | LJ || 2,5
|-
|}
== Rozkazy bez pierwszego argumentu z argumentem normalnym - rozkazy umieszczania grupowego (grupa L) ==
{| 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
|-
| 75 || 111 101 || D || 000 || BBB || CCC || align="center" | LD || 3,85
|-
| 75 || 111 101 || D || 001 || BBB || CCC || align="center" | LF || 4,9
|-
| 75 || 111 101 || D || 010 || BBB || CCC || align="center" | LA || 9,0
|-
| 75 || 111 101 || D || 011 || BBB || CCC || align="center" | LL || 4,9
|-
| 75 || 111 101 || D || 100 || BBB || CCC || align="center" | TD || 3,85
|-
| 75 || 111 101 || D || 101 || BBB || CCC || align="center" | TF || 4,9
|-
| 75 || 111 101 || D || 110 || BBB || CCC || align="center" | TA || 9
|-
| 75 || 111 101 || D || 111 || BBB || CCC || align="center" | TL || 4,9
|-
|}
== Rozkazy bez pierwszego argumentu z argumentem normalnym - rozkazy pamiętania grupowego (grupa G) ==
{| 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
|-
| 76 || 111 110 || D || 000 || BBB || CCC || align="center" | RD || 3,5
|-
| 76 || 111 110 || D || 001 || BBB || CCC || align="center" | RF || 4,5
|-
| 76 || 111 110 || D || 010 || BBB || CCC || align="center" | RA || 8,3
|-
| 76 || 111 110 || D || 011 || BBB || CCC || align="center" | RL || 4,5
|-
| 76 || 111 110 || D || 100 || BBB || CCC || align="center" | PD || 3,5
|-
| 76 || 111 110 || D || 101 || BBB || CCC || align="center" | PF || 4,5
|-
| 76 || 111 110 || D || 110 || BBB || CCC || align="center" | PA || 8,3
|-
| 76 || 111 110 || D || 111 || BBB || CCC || align="center" | PL || 4,5
|-
|}
== Rozkazy bez pierwszego argumentu z argumentem normalnym - rozkazy różne (grupa B/N) ==
{| 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
|-
| 77 || 111 111 || D || 000 || BBB || CCC || align="center" | <span style="color:red">MB</span> || 2,4
|-
| 77 || 111 111 || D || 001 || BBB || CCC || align="center" | <span style="color:red">IM</span> || 2,4
|-
| 77 || 111 111 || D || 010 || BBB || CCC || align="center" | <span style="color:red">KI</span> || 2,2
|-
| 77 || 111 111 || D || 011 || BBB || CCC || align="center" | <span style="color:red">FI</span> || 2,4
|-
| 77 || 111 111 || D || 100 || BBB || CCC || align="center" | <span style="color:red">SP</span> || 2,4
|-
| 77 || 111 111 || D || 101 || BBB || CCC || align="center" | MD || -
|-
| 77 || 111 111 || D || 110 || BBB || CCC || align="center" | RZ || 2,2
|-
| 77 || 111 111 || D || 111 || BBB || CCC || align="center" | IB || 3,6&divide;5<sup>P</sup>
|-
|}
|}

Menu nawigacyjne