试编写一个程序求出双字长数的绝对值。双字长数在A和A+2单元中,结果存放在B及B+2单元中。

1.MOVAX,A;把双字长数的低字放到AX中2.MOVDX,[A+2];把双字长数的高字放到DX中3.TESTDX,8000H;测试双字长数的符号4.JZRIGHT;如... 1.MOV AX,A ;把双字长数的低字放到AX中
2.MOV DX,[A+2] ;把双字长数的高字放到DX中
3.TEST DX,8000H ;测试双字长数的符号
4.JZ RIGHT ;如果是非负数,则直接保存
5.NEG DX ;如果是负数,则求补
6.NEG AX
7.SBB DX,0
8.RIGHT: MOV B ,AX
MOV [B+2],DX
谁能给我解释一下5-7步的意思到底是什么?我很不明白
展开
 我来答
pardream941026
2013-06-10 · TA获得超过8217个赞
知道大有可为答主
回答量:4602
采纳率:89%
帮助的人:1342万
展开全部
双字,低位在AX中,高位在DX中,

所以,当数字符号位:即DX的最高位为1时,(即负数),需要对数字进行NEG操作,即求取数的补数,即求绝对值
第7步是为了防止neg ax时产生进位,
chr1999
2013-06-10 · TA获得超过1056个赞
知道小有建树答主
回答量:2462
采纳率:0%
帮助的人:1244万
展开全部
就是取绝对值,

7 是进位
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式