当前文档版本为 v0.2.0,您可以访问当前页面的 开发中 版本以获取最近可能的更新。

rorc


rorc R

指令格式

rorc R

影响标志

C Z

伪指令

1
2
{R, C} = {C, R}
Z = R ? 0 : 1

指令描述

带状态C对寄存器R循环右移1位,结果存储到寄存器R;

范例

1
2
3
4
5
//0x3C >> 1
//C = 0, AC = 0, Z = 0, OV = 0
mov     A, #0x3C    //A = 0x3C
mov     0xDD, A     //[0xDD] = 0x3C
rorc    0xDD        //[0xDD] = 0x1E, C = 0, AC = 0, Z = 0, OV = 0

rorc A, R

指令格式

rorc A, R

影响标志

C Z

伪指令

1
2
{A, C} = {C, R}
Z = A ? 0 : 1

指令描述

带状态C对寄存器R循环右移1位,结果存储到累加器A;

范例

1
2
3
4
5
//0x2B >> 1
//C = 0, AC = 0, Z = 0, OV = 0
mov     A, #0x2B    //A = 0x2B
mov     0xD6, A     //[0xD6] = 0x2B
rorc    A, 0xD6     //A = 0x15, C = 1, AC = 0, Z = 0, OV = 0