| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 623 人关注过本帖
标题:求解 ,哪位能帮我一下!
只看楼主 加入收藏
az71566
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2013-8-22
结帖率:66.67%
收藏
 问题点数:0 回复次数:5 
求解 ,哪位能帮我一下!
mov ax,62627     AX=  F4A3H
mov ah,31H       AX=  31H
mov al,23H       AX=  23H
add ax,ax        AX=  3132H
mov bx,826CH     BX=  826CH   
mov cx,ax        CX=  3132H
mov ax,bx        AX=  826CH
add ax,bx        AX=  04D8H      结果是104D8 为什么这个1要去掉?
mov al,bh        AX=  0482H
mov ah,bl        AX=  6C82H
add ah,ah        AX=  D882H
add al,6         AX=  D888H
add al,al        AX=  D810H      结果是D8110H 中间的那个1为什么要去掉?
2013-09-11 20:25
303770957
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:6
帖 子:838
专家分:2125
注 册:2005-9-10
收藏
得分:0 
先说第一个吧:计算结果没问题是104D8H,由于寄存器存不下这么大数据所以溢出了,将最前面的1给丢掉了。
第二个问题和第一个问题类似,首先这是al的值是88H,计算88H+88H=110H,但是这是两个低八位寄存器的值相加计算的结果还放到al中但是放不下溢出了,就将1丢了,al=10H。此时ah还是D8,所以ax=D810H了。

♂ 死后定当长眠,生前何须久睡。♀
2013-09-11 21:22
az71566
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2013-8-22
收藏
得分:0 
为什么是1 被丢弃 可以是别的数字吗?
2013-09-11 23:21
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:400
帖 子:11857
专家分:43421
注 册:2006-5-13
收藏
得分:0 
二进制除了1就是0,前导0是无意义的,不存在溢出的问题,所以溢出的总是1。

活到老,学到老!http://www.(该域名已经被ISP盗卖了)E-mail:hu-jj@
2013-09-12 07:30
stop1204
Rank: 9Rank: 9Rank: 9
来 自:福建省
等 级:贵宾
威 望:22
帖 子:295
专家分:1151
注 册:2013-9-8
收藏
得分:0 
貌似存放在CF  标志寄存器中,, 那么你可以用 adc bx,0   相当于 bx+0+进位值

hl928452957@gmail点com

2013-09-12 07:33
az71566
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2013-8-22
收藏
得分:0 
谢谢各位啦!
2013-09-12 11:18
快速回复:求解 ,哪位能帮我一下!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.037051 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved