V assembleru se dá taky for cyklus nahradit rekurzí - voláním: Mějme for cyklus, který přičítá jedno pole k druhému. V edi je adresa pole ke kterému se přičítá, v esi adresa které se přičítá, v ecx počet (ecx nesmí být 0):
aa: mov eax,[edi]
add eax,[esi]
mov [edi],eax
add edi,4
add esi,4
dec exc
jnz aa
Tak ten se přepíše na rekurzivní volání takhle
mov ecx,4
push ecx
aa: pop eax
mov eax,[edi]
add eax,[esi]
mov [edi],eax
add edi,4
add esi,4
dec ecx
jz bb
call aa
bb:
Na assembleru Z80 dokonce na to byla speciálni instrukce call nz :) Takže tam by se to dalo napsat (BC-počet, HL-adresa zdroje, DE-adres cíle)
push bc
aa: pop ix
ld a,[de]
add a,[hl]
ld [de],a
inc de
inc hl
dec bc (doufám že tahle instrukce ovlivňuje ten správnej flag - nechce se mi teď hrabat v datasheetu od Z80 ;-) )
call nz, aa
Odpověď na názor
Odpovídáte na názor k článku Mercury: Abstrakce nad algoritmy.
Rekurzivní volání
celé vláknoPravidla pro diskutující
Přidáním čtenářského příspěvku do diskusí či fóra souhlasíte s tím, že budete dodržovat následující pravidla. Při jejich hrubém porušení se vystavujete riziku smazání příspěvku, jeho modifikaci, v krajním případě i zablokování přístupu do diskusí.
Redakce ze zásady nezasahuje do čtenářských diskusí a zavazuje se, že nebude mazat ani modifikovat příspěvky, kromě případů, kdy tyto porušují některé z následujících pravidel. V takové situaci je na zvážení redakce, zda příspěvek modifikuje s viditelným upozorněním, či přímo smaže. Redakce nikdy nemaže „nesouhlasné komentáře“ jen proto, že jsou nesouhlasné. Vítáme střet názorů, ale vždy v rámci slušné a kultivované debaty.
Příspěvky nesmí obsahovat:
- Vulgární či hrubé výrazy.
- Urážlivé výroky na adresu druhé osoby či skupiny osob.
- Texty, které mají za cíl jen vyprovokovat emotivní reakci (trolling).
- Rasové útoky či útoky na jakoukoliv jinou menšinu či skupinu obyvatel.
- Komerční nabídky a affiliate odkazy.
- Odkazy na warez, sériová čísla, licenční kódy, pornografii a další nevhodný materiál stejně jako žádosti o poskytnutí tohoto obsahu.
- Prokazatelně protiprávní obsah.
Informace o soukromí: U všech přidaných komentářů provozovatel ukládá IP adresu a hostname odesílatele. U neregistrovaných uživatelů se na webu zobrazuje část hostname, případně IP adresy, neumožňující identifikovat konkrétní počítač.
Povolené značky XHTML: a, br, code, em, li, ol, p, pre, strong, sub, sup, ul

