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

subc


subc A, R

指令格式

subc A, R

影响标志

C AC Z OV

伪指令

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
bit T, H
bit[4] L4
bit[3] H3
bit[8] X
X = ~R
{AC, L4} = A[3:0] + X[3:0] + C
{T, H3} = A[6:4] + X[6:4] + AC
{C, H} = A[7] + X[7] + T
OV = C ^ T
A = {H, H3, L4}
Z = A ? 0 : 1

指令描述

累加器A和寄存器R带借位减法,结果存储到累加器A;

注意

按照伪指令的算法,减法C标志在有借位时为0,无借位时为1

范例

1
2
3
4
5
6
//0xA1 - 0x5E
//C = 1, AC = 0, Z = 1, OV = 1
mov     A, #0x5E    //A = 0x5E
mov     0xDA, A     //[0xDA] = 0x5E
mov     A, #0xA1    //A = 0xA1
subc    A, 0xDA     //A = 0x43, C = 1, AC = 0, Z = 0, OV = 1