Příznak znaménka
Příznak znaménka[1] (zkracováno někdy SF z anglického sign flag, někdy N z anglického negative) je jeden z bitů registru příznaků některých procesorů. Je nastavován tehdy, když je výsledkem matematické operace záporné číslo, což je v široce používané reprezentaci pomocí dvojkového doplňku tehdy, má-li výsledek operace nastaven nejvýznamnější bit (plnící funkci znaménkového bitu).
Příznak může být nastavován početními operacemi, logickými operacemi i instrukcí porovnání.
Na základě nastavení příznaku znaménka se mohou realizovat podmíněné skoky, například procesory z rodiny x86 mají přímo instrukce:[2]
- JS
- skočí, je-li nastaven příznak znaménka
- JNS
- skočí, není-li nastaven příznak znaménka
Kromě toho je samozřejmě příznak znaménka brán v úvahu i při vyhodnocování srovnání čísel se znaménkem, například instrukcí[2]
- JL
- skočí, je-li příznak znaménka různý od příznaku přetečení.
Podobně na procesorech z rodiny ARM jsou možné podmíněné instrukce s podmínkami:[3]
- MI
- (minus) proveď instrukci, je-li nastaven příznak znaménka
- PL
- (plus) proveď instrukci, není-li nastaven příznak znaménka
a jiné podmíněné znaménkovým porovnáním čísel.
Reference
editovat- ↑ MAREK, Rudolf. Učíme se programovat v jazyce Assembler pro PC. Brno: Computer Press, 2003. ISBN 80-7226-843-0.
- ↑ a b BRANDEJS, Michal. Mikroprocesory Intel 8086 – 80486 [online]. Brno: Fakulta informatiky Masarykovy univerzity, 2010 [cit. 2014-02-24]. S. 51. Dostupné online.
- ↑ ARM Architecture Reference Manual [online]. ARM Limited, 2000 [cit. 2014-02-24]. (anglicky)