当前位置: 代码迷 >> 汇编语言 >> 汇编16bit写一个程序
  详细解决方案

汇编16bit写一个程序

热度:3852   发布时间:2013-02-26 00:00:00.0
求助汇编16bit写一个程序
要用汇编16bit写一个程序,输出如下,怎样写啊?帮帮忙,先谢谢
How many numbers would you like to add: 5
Enter a number: 10
Enter a number: 25
Enter a number: 10
Enter a number: 25
Enter a number: 50
The sum of the numbers is: 120


------解决方案--------------------------------------------------------
我已经完成了这个题目的基本要求,不过还有BUG,希望有高手帮忙修改下
Assembly code
data segmentstr1 db 'How many numbers would you like to add:$'str2 db 'Enter a number:$'str3 db 'The sum of the numbers is:$'str4 db 5 dup('0'),0ah,0dh,'$'data endscode segmentassume cs:code,ds:datastart:mov ax,datamov ds,axlea dx,str1 ;询问循环次数mov ah,09hint 21hmov ah,01hint 21hsub al,30hxor ah,ahmov cx,axxor bx,bxmov dl,0ahmov ah,02hint 21hnext:lea dx,str2 ;使用循环输入数字mov ah,09hint 21hmov ah,01hint 21hsub al,30hxor ah,ahadd bx,axmov dl,0ahmov ah,02hint 21hloop nextlea dx,str3 ;显示结果mov ah,09hint 21hlea si,str4+4mov ax,bxmov cx,10again:xor dx,dx ;转换十六进制为十进制idiv cxadd dl,30hmov [si],dldec sijge againlea dx,str4mov ah,09hint 21hmov ah,01hint 21hmov ah,4chint 21hcode endsend start