Zajimavej problem
Neni k tomu ani potreba bitova oblast, data muzou bejt kdekoli, stajne budes prohazovat A jak zdesenej
V cyklu muzes testovat bit nahranim bytu do A, pak logickej soucin s registrem, ve kterym je “1” na miste testovanyho bitu. Nasledna instrukce JZ nebo JNZ (jump if A is/not zero) urci, zda je tam 1 nebo 0.
dal provedes na tom registru rotaci vlevo (1 se posune napr. z bitu 0 na 1) (do A, nahrat registr, provest rotaci, registr vratit, znova do A nacist testovany byte) a znova soucin + JZ/JNZ… tim zpracujes dalsi bit… a tak porad dokola, dokud neprojdes 1 byte.
Potom se vrhnes na dalsi
Muzu se zeptat, k cemu to slouzi? mimochodem na avr by to bylo “nepatrne” jednodussi a rychlejsi
EDIT: Ted me napadlo jeste rychlejsi a jednodussi reseni: staci testovany byte rotovat pres C a po kazde rotaci testem C zjistis hodnotu toho bitu
Holt ani do hospody nevede jen 1 cesta a napoprvy vzdy nenajdes tu nejkratsi