put 0 → rv ; vynulovat výstupní registry put 0 → l6 check_max: ugt l1, l6 → t1 ; ověřit a nastavit nové maximum jz t1, loop copy l1 → l6 loop: eq l1, 1 → t1 ; ukončit při jedničce jnz t1, check add rv, 1 → rv ; jinak zvýšit čítač and l1, 1 → t1 ; test sudosti jz t1, even mul l1, 3 → l1 ; n = 3n + 1 add l1, 1 → l1 jmp check_max ; možná jsme našli nové maximum even: udiv l1, 2 → l1 ; n = n / 2 jmp loop ; při dělení jsme jistě maximum nenašli