[汇编]请问汇编语言中如何输出十进制计算结果?

S=1+2*3+3*4+4*5+……+N(N+1),我编写的代码中已经将S计算出来并存入AX,请问要如何在屏幕上显示这个计算结果?

一般汇编语言教材中都有这个问题的例题,建议去找本书参考一下。

大体需要5个步骤,过程如下:
1. 将AX中内容除以10000,得到的商是万位数,余数暂存起来。
将所得的商转成ASCII码,输出显示。
2. 将刚才的余数除以1000,得到的商是千位数,余数暂存起来。
将所得的商转成ASCII码,输出显示。
3. 将刚才的余数除以100,得到的商是百位数,余数暂存起来。
将所得的商转成ASCII码,输出显示。
4. 将刚才的余数除以10,得到的商是十位数,余数是个位数,暂存起来。
将所得的商转成ASCII码,输出显示。
5. 将刚才的余数转成ASCII码,输出显示。

这个问题一般不用循环实现,因为循环实现并不能让程序简化。
这个问题一定要注意:不能用每次除以10,先得余数个位数,再得十位数、百位数、……这样的方法,因为8086的除法指令不支持这么处理,大数除以10会出现除法溢出错误。
温馨提示:答案为网友推荐,仅供参考
相似回答