Odwrócenie stanu znacznika C

From Atariki

(Różnice między wersjami)
Jump to: navigation, search
Wersja z dnia 10:45, 30 wrz 2017
KMK (Dyskusja | wkład)

← Previous diff
Aktualna wersja
KMK (Dyskusja | wkład)

Linia 8: Linia 8:
Kod zajmuje 4 bajty i 6 cykli maszynowych. Operacja nie zmienia stanu akumulatora. Kod zajmuje 4 bajty i 6 cykli maszynowych. Operacja nie zmienia stanu akumulatora.
 +
 +Metoda nr 2:
 +
 +<pre>
 + bcc _set
 + clc
 + .byte $b0 ;rozkaz BCS
 +_set sec
 +</pre>
 +
 +5 bajtów i 5-6 cykli maszynowych. Operacja nie zmienia stanu znaczników N i Z.
[[Kategoria:Niezbędnik kodera]] [[Kategoria:Niezbędnik kodera]]

Aktualna wersja

W procesorach serii 65xx są rozkazy ustawiania i kasowania znacznika C, ale nie ma rozkazu odwracania jego stanu. Gdyby taka operacja była do czegoś potrzebna, można ją zrealizować następująco:

     rol
     eor #$01
     ror

Kod zajmuje 4 bajty i 6 cykli maszynowych. Operacja nie zmienia stanu akumulatora.

Metoda nr 2:

     bcc _set
     clc
     .byte $b0     ;rozkaz BCS
_set sec

5 bajtów i 5-6 cykli maszynowych. Operacja nie zmienia stanu znaczników N i Z.

Personal tools