sz¶
sz R¶
指令格式¶
sz R
影响标志¶
无
伪代码描述¶
1 2 3 | if(R != 0){ //sz后的一条操作指令 } |
指令描述¶
判断寄存器R,如果为0则跳过下一条指令;
范例¶
1 2 3 4 5 6 7 8 9 | //sum of 1 ~ A cseg sum_A: mov R0, A //R0 = A clr A //A = 0 add A, R0 //A = A + R0 dec R0 //R0 = R0 - 1 sz R0 //if R0 == 0 then skip next instruction end jmp sum_A + 2 ret |
sz A, R¶
指令格式¶
sz A, R
影响标志¶
无
伪代码描述¶
1 2 3 4 | A = R; if(R != 0){ //sz后的一条操作指令 } |
指令描述¶
将寄存器R复制到累加器A,判断累加器A,如果为0则跳过下一条指令;
范例¶
1 2 3 4 5 6 7 8 | //sum of 1 ~ A cseg sum_A: clr R0 //R0 = 0 add R0, A //R0 = R0 + A dec R0 //R0 = R0 - 1 sz A, R0 //A = R0; if R0 == 0 then skip next instruction end jmp sum_A + 1 ret |