DAS的汇编指令

 我来答
梦初醒da43d
2016-05-12 · 超过33用户采纳过TA的回答
知道答主
回答量:99
采纳率:66%
帮助的人:15.4万
展开全部

DAS(Decimal Adjust for Subtraction) 如果(AL & 0FH)>9或辅助进位标志A=1 (即个位数不够减,需要借位),则:AL的值减6 (校正低4位)
„ 辅助进位标志A置1;如果AL>9FH 或进位标志C=1 (即十位数不够减,需要借位),则:
„ AL的值减60H (校正高4位)进位标志C置1 (AL)=12H(12的组合BCD码),(BL)=34H (34的组合BCD码),求12-34的值。直接执行减法指令:
SUB AL ,BL 后,(AL)= 0DEH,显然结果不正确,需要校正:DAS
DAS指令自动完成以下操作:由于相减时AL的低4 位向高4位进位,AF=1,故:
„ (AL) ←(AL) - 6,即(AL)=0DEH- 6=0D8H
AF=1
由于相加时AL>9FH ,故:
„ (AL) ←(AL) - 60,即(AL)=0D8H- 60=78H
„ CF=1
最后,CF=1,(AL)=78H(因为112 -34=78 )

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式