brev¶
brev R¶
指令格式¶
brev R
影响标志¶
无
伪代码描述¶
1 2 3 4 5 6 7 8  | R = ((R >> 7) & 0x01) | ((R >> 5) & 0x02) | ((R >> 3) & 0x04) | ((R >> 1) & 0x08) | ((R << 7) & 0x80) | ((R << 5) & 0x40) | ((R << 3) & 0x20) | ((R << 1) & 0x10);  | 
指令描述¶
将寄存器R内容进行位序反转,结果存储到寄存器R中。
指令执行前:
       7    6    5    4    3    2    1    0
    +----+----+----+----+----+----+----+----+
R = | b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 |
    +----+----+----+----+----+----+----+----+
指令执行后:
       7    6    5    4    3    2    1    0
    +----+----+----+----+----+----+----+----+
R = | b0 | b1 | b2 | b3 | b4 | b5 | b6 | b7 |
    +----+----+----+----+----+----+----+----+
brev A, R¶
指令格式¶
brev A, R
影响标志¶
无
伪代码描述¶
1 2 3 4 5 6 7 8  | A = ((R >> 7) & 0x01) | ((R >> 5) & 0x02) | ((R >> 3) & 0x04) | ((R >> 1) & 0x08) | ((R << 7) & 0x80) | ((R << 5) & 0x40) | ((R << 3) & 0x20) | ((R << 1) & 0x10);  | 
指令描述¶
将寄存器R内容进行位序反转,结果存储到累加器A中。
指令执行前:
       7    6    5    4    3    2    1    0
    +----+----+----+----+----+----+----+----+
R = | b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 |
    +----+----+----+----+----+----+----+----+
指令执行后:
       7    6    5    4    3    2    1    0
    +----+----+----+----+----+----+----+----+
A = | b0 | b1 | b2 | b3 | b4 | b5 | b6 | b7 |
    +----+----+----+----+----+----+----+----+
范例¶
1 2 3  | mov A, #0xC5 //A = 0xC5 mov R, A //R = 0xC5 brev A, R //A = 0xA3  |