Difference between revisions of "Assembly Language IF"
Line 16: | Line 16: | ||
CMP R0, #99 | CMP R0, #99 | ||
BNE .loop | BNE .loop | ||
+ | |||
+ | Line 1 sets the value of Register 0 to the value 0. | ||
+ | Line 2 is a label which will be used to branch too. | ||
+ | Line 3 adds the value 1 to the current value in Register 0 and stores the value back into Register 0. | ||
+ | Line 4 compares the value in Register 0 with the value 99. | ||
+ | Line 5 will branch to the .loop label if the previous compare was NOT EQUAL. |
Revision as of 09:40, 16 June 2017
C# example
int a = 0;
do
{
a++
}
while ( A != 99);
Assembly Version
LDR R0, #0 .loop ADD R0, R0, #1 CMP R0, #99 BNE .loop
Line 1 sets the value of Register 0 to the value 0. Line 2 is a label which will be used to branch too. Line 3 adds the value 1 to the current value in Register 0 and stores the value back into Register 0. Line 4 compares the value in Register 0 with the value 99. Line 5 will branch to the .loop label if the previous compare was NOT EQUAL.