. : : Assembly Language : : .
|
首页
|
我提出的问题
|
我参与的问题
|
我的收藏
|
消息中心
|
游客 登录
|
刷新
|
提问
|
未解决
|
已解决
|
精华区
|
搜索
|
《汇编语言》论坛
->
CALL和RET指令
管理员:
assembly
[
回复本贴
]
[
收藏本贴
] [
管理本贴
] [
关闭窗口
]
主题 : :
问:除数为dword型的除法
[待解决]
回复[
3
次 ] 点击[
616
次 ]
yuhuofei
[帖 主]
[ 发表时间:2009-05-04 18:04 ]
[
引用
]
[
回复
]
[
top
]
荣誉值:0
信誉值:0
注册日期:2008-11-17 21:27
关于实验10之二——解决除法溢出问题
子程序功能:进行不会产生溢出的除法运算,被除数为dword型,除数为word型,结果为dword型。
如果除数也是dword型,那么该怎么考虑呢?
mess
[第
1
楼]
[ 回复时间:2009-05-05 02:23 ]
[
引用
]
[
回复
]
[
top
]
荣誉值:337
信誉值:0
注册日期:2008-01-01 17:48
你做好和研究透这个第二个子程序了吗?是不是可以用类似的方法扩展。
zhenglxd
[第
2
楼]
[ 回复时间:2009-05-20 20:10 ]
[
引用
]
[
回复
]
[
top
]
荣誉值:30
信誉值:0
注册日期:2009-04-09 10:05
回复:[贴 主]
------------------
楼主的命题是 没有意义的 任何程序都有范围 没有什么是可以无限适应的
防溢出 的关键是 你要预先知道 溢出数值的范围
如果除数是dword
那么把被除数和除数同时除以一个数字然后下进行除法
比如1亿 除以10万
先把10万/10得1万
再把1亿/10得 一千万
在做1千万 / 1万的除法
程序的构思和 防溢出的一样
可能商的位数 会超过8位那么 做好相关寄存器的数值保存和转换
1035802659
[第
3
楼]
[ 回复时间:2010-05-05 14:44 ]
[
引用
]
[
回复
]
[
top
]
荣誉值:0
信誉值:0
注册日期:2010-05-01 15:37
思想独特,谢谢!
需要登录后才能回帖 -->>
请单击此处登录
Copyright © 2006-2024 ASMEDU.NET All Rights Reserved