Rlc

Technology
12 hours ago
8
4
2
Avatar
Author
Albert Flores

rlc nebo RLC je instrukce procesorů Intel 8080 a Z80.

Instrukce procesoru Intel 8080

Instrukce RLC je odpovídající instrukci rlca, resp. instrukci rlc a procesoru Z80.

Instrukce procesoru Z80

76543210
C
Název instrukce je tvořen prvními písmeny významu instrukce Rotate Left Circular. Instrukce provádí přesun (rotaci) bitů ve směru z méně významné pozice na více významnou pozici. +more Bit z nejvíce významné pozice (7) je přesunut na nejméně významnou pozici (0). Kromě toho je hodnota bitu z nejvíce významné pozice zkopírována i do příznaku přenosu. Instrukce může pracovat jak s registrem, tak s místem v paměti. V instrukční sadě procesoru Intel 8080 existuje stejnojmenná instrukce RLC ale ta je pouze omezenou varianou instrukce rlc procesoru Z80, protože pracuje pouze s akumulátorem. Odpovídá tak instrukci rlc a a svým instrukčním kódem odpovídá instrukci rlca procesoru Z80.

Rotace hodnoty v registru

Rotace hodnoty v registru
rlc arlc brlc crlc drlc erlc hrlc l

Instrukce slouží k rotaci hodnoty registru. Délka instrukce je dva byty, první byte je prefix CB. +more

Kód instrukce
76543210
1. byte11001011
2. byte00000registrregistrregistr
.

Obecně je možné tuto instrukci zapsat jako rlc r, kde r je zástupný symbol pro některý z registrů procesoru A, B, C, D, E, H a L. Instrukce ke svému vykonání potřebuje 2 M-cykly a doba jejího vykonání trvá 8 T-cyklů. +more Registr, se kterým instrukce pracuje, zakódován v nultém až druhém bitu druhého bajtu operačního kódu instrukce. Tato trojice bitů je jednotlivým registrům přiřazena jako: 111 - registr A , 000 - registr B, 001 - registr C, 010 - registr D, 011 - registr E, 100 - registr H, 101 - registr L. Kombinace bitů označujících registr může nabývat i hodnoty 110, v tomto případě se jedná o instrukci rlc, která ale místo s registrem pracuje s paměťovým místem na adrese HL (viz níže). V instrukční sadě procesoru se nachází instrukce rlca, která provádí stejnou akci jako instrukce rlc a, ale je vykonána rychleji.

Rotace hodnoty v paměti

Rotace hodnoty v paměti
rlc (hl)rlc (ix±N)(iy±N)

Instrukce slouží k rotaci hodnoty v paměťovém místě. Adresa v paměti, jejíž obsah je rotován, může být určena buď hodnotou registru HL nebo hodnotou indexového registru IX nebo registru IY a offsetem. +more

Kód instrukce při adresování registrem HL
76543210
1. byte11001011
2. byte00000110
V případě, kdy je k adresaci použit registr HL, je délka instrukce dva byty, první byte je prefix CB. Instrukce ke svému vykonání potřebuje 4 M-cykly a doba jejího vykonání trvá 15 T-cyklů. [wiki_table=d97ad46e] Pokud je k adresaci použit indexový registr, je délka instrukce čtyři byty, první byte je prefix IX (X = 0) nebo prefix IY (X = 1) následovaný prefixem CB a offsetem. Posledním bytem je vlastní instrukce. Instrukce ke svému vykonání potřebuje 6 M-cyklů a doba jejího vykonání trvá 23 T-cyklů.

Umístění instrukcí rlc v souboru instrukcí

Rozmístění instrukcí rlc v instrukčním souboru procesoru Z80 Instrukce na šedém podkladu jsou nedokumentované instrukce
##. 0. +more1. 2. 3. 4. 5. 6. 7. 8. 9. A. B. C. D. E. F
0. rlca
Po prefixu CBPo prefixu CBPo prefixu CBPo prefixu CBPo prefixu CBPo prefixu CBPo prefixu CBPo prefixu CBPo prefixu CBPo prefixu CBPo prefixu CBPo prefixu CBPo prefixu CBPo prefixu CBPo prefixu CBPo prefixu CBPo prefixu CB
0. rlc brlc crlc drlc erlc hrlc lrlc (hl)rlc a
Po prefixu IX a prefixu CBPo prefixu IX a prefixu CBPo prefixu IX a prefixu CBPo prefixu IX a prefixu CBPo prefixu IX a prefixu CBPo prefixu IX a prefixu CBPo prefixu IX a prefixu CBPo prefixu IX a prefixu CBPo prefixu IX a prefixu CBPo prefixu IX a prefixu CBPo prefixu IX a prefixu CBPo prefixu IX a prefixu CBPo prefixu IX a prefixu CBPo prefixu IX a prefixu CBPo prefixu IX a prefixu CBPo prefixu IX a prefixu CBPo prefixu IX a prefixu CB
0. rlc (ix±N),brlc (ix±N),crlc (ix±N),drlc (ix±N),erlc (ix±N),hrlc (ix±N),lrlc (ix±N)rlc (ix±N),a
.

Reference

Související články

rlca * rrc * rl * rr * sla * sra * slia * srl * rrd * rld

Kategorie:Z80

5 min read
Share this post:
Like it 8

Leave a Comment

Please, enter your name.
Please, provide a valid email address.
Please, enter your comment.
Enjoy this post? Join Cesko.wiki
Don’t forget to share it
Top