Scf

instrukce procesorů From Wikipedia, the free encyclopedia

Remove ads

scf nebo SCF je instrukce některých procesorů, např. Z80 či ST9[1]. Název instrukce je odvozen z výrazu set carry flag.[2] Instrukce nastavuje hodnotu příznaku přenosu C na logickou jedičku, u podmíněných instrukcí tedy pak platí podmínka C.

Instrukce procesoru Z80

Další informace Kód instrukce ...

Kód instrukce scf je jednobytový, jeho hodnota je 55 desítkově a 37 šestnáctkově. Vykonání instrukce vyžaduje jeden M-cyklus a trvá čtyři T-cykly.[3][4][5]

Instrukci je nutné použít v případě, kdy je požadováno nastavení příznaku přenosu na logickou nulu a současně nesmí dojít k ovlivnění ostatních příznaků, v tomto případě musí být instrukce scf následována instrukcí ccf.[2] Instrukce ccf mění hodnotu příznaku přenosu na hodnotu opačnou.

Instrukce kromě příznaku přenosu ovlivňuje pouze příznaky, které není možné přímo testovat, jak příznak odečítání N tak příznak polovičního přenosu H jsou po vykonání instrukce scf nastaveny na logickou nulu.[3][4][2]

V roce 2012 se věnoval zkoumání funkce procesoru Z80 český programátor Patrik Rak a objevil, že pokud nějaká instrukce procesoru nastavuje některý z příznaků v registru F, následující instrukce scf nebo ccf pouze přenese stav bitů 3 a 5 registru A do odpovídajících bitů registru F, zatímco pokud instrukce procesoru nenastavuje žádný příznak, následující instrukce scf nebo ccf do bitů 3 a 5 registru F uloží výsledek operace OR odpovídajících bitů registru A a registru F.[6][7]

Odpovídající instrukce v instrukční sadě procesoru Intel 8080 je STC.[8]

Remove ads

Reference

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads