c51 家族
rev. e (14 jan. 97)
21
matra mhs
addc 一个, <src-字节>
函数 :
增加 和 carry
描述 :
addc 同时发生地 adds 这 字节 能变的 表明, 这 carry 标记 和 这 accumulator 内容,
leaving 这 结果 在 这 accumulator. 这 carry 和 auxiliary-carry 或者 位 flags 是 设置, 各自,
如果 那里 是 一个 carry-输出 从 位 7 或者 位 3, 和 cleared 否则. 当 adding unsigned integers, 这
carry 标记 indicates 一个 overflow occured.
ov 是 设置 如果 那里 是 一个 carry-输出 的 位 6 但是 不 输出 的 位 7, 或者 一个 carry-输出 的 位 7 但是 不 输出 的 位
6 ; 否则 ov 是 cleared. 当 adding signed intergers, ov indicates 一个 负的 号码 生产
作 这 总 的 二 积极的 operands 或者 一个 积极的 总 从 二 负的 operands.
四 源 operand 寻址 模式 是 允许 ; 寄存器, 直接, 寄存器-间接的, 或者 立即的.
例子 :
这 accumulator holds 0c3h (11000011b) 和 寄存器 0 holds 0aah (10101010b) 和 这 carry
标记 设置. 这 操作指南,
addc 一个, r0
将 leave 6eh (01101110b) 在 这 accumulator 和 交流 cleared 和 两个都 这 carry 标记 和 ov
设置 至 1.
addc 一个, rn
字节 :
1
循环 :
1
encoding :
0 0 1 1 1 r r r
运作 :
ADDC
(一个)
←
(一个) + (c) + (r
n
)
addc 一个, 直接
字节 :
2
循环 :
1
encoding :
0 0 1 1 0 1 0 1 直接 地址
运作 :
ADDC
(一个)
←
(一个) + (c) + (直接)
addc 一个, @ ri
字节 :
1
循环 :
1
encoding :
0 0 1 1 0 1 1 i
运作 :
ADDC
(一个)
←
(一个) + (c) + ((r
i
))
addc 一个, #data
字节 :
2
循环 :
1
encoding :
0 0 1 1 0 1 0 0 立即的 数据
运作 :
ADDC
(一个)
←
(一个) + (c) + # 数据