Update chapter-05 exercise 33 #18
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Each iteration of the loop x3002 - x3008 R6 doubles beginning from 0000 0000 0000 0001 (next iteration - 0000 0000 0000 0001 + 0000 0000 0000 0001 = 0000 0000 0000 0010, then 0000 0000 0000 0100 and so on). Also each iteration of the loop x3002 - x3008 R0 incremented beginning from x0000. Branch in x3003 will start jump when R6 = 0000 0000 0010 0000 because at the end of the program R0 = 5. This mean that R5 = 0000 0000 0001 1111 because only in this condition the result of R5 AND R6 can be 0000 0000 0000 0000 when R0=5. Following doubles of R6 in x3005 (0000 0000 0100 0000, 0000 0000 1000 0000...) won't influent the result of R5 AND R6, it still will be 0. So in this case x3004 wouldn't be executed and R0 would stop increment at R0 = 5.