汇编求n的阶乘.doc

汇编求n的阶乘.doc

ID:55186370

大小:25.00 KB

页数:6页

时间:2020-05-02

汇编求n的阶乘.doc_第1页
汇编求n的阶乘.doc_第2页
汇编求n的阶乘.doc_第3页
汇编求n的阶乘.doc_第4页
汇编求n的阶乘.doc_第5页
资源描述:

《汇编求n的阶乘.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、DATASSEGMENTstringdb"Pleaseinputanumber(0-10000):",0dh,0ahwrongstringdb"Anumberplease!",0ah,0dh,'$'inputbufferdb6,?,6dup(?)c10dw10;输入时进制转换的数ndw?;要求阶乘的数mdw?;步长cdw?;进位idw?;outputbufferdw30000dup(?);DATASENDS;*******************************************************************************STACKSSE

2、GMENT;此处输入堆栈段代码STACKSENDS;*******************************************************************************CODESSEGMENTASSUMECS:CODES,DS:DATAS,SS:STACKSSTART:MOVAX,DATAS;MOVDS,AX;;-------------------------------------------------------mainproccallinput;callfractor;movcx,diroutput:;循环输出pushcx;mo

3、vdi,cx;calloutput;popcxdeccxcmpcx,0jgeroutputdisplaylength:movdl,0dhmovah,2int21hmovdl,0ahmovah,2int21hexit:;movah,07h;int21h;movax,4c00h;INT21H;;mainendp;;-------------------------------------------------------;--------------------------------------------------------inputprocnearleabx,string

4、movcx,33disstring:movdl,[bx]movah,2int21hincbxloopdisstringjmpinputinitwronginput:leadx,wrongstringmovah,9int21hinputinit:leadx,inputbuffer;装载输入缓冲区首地址movah,0ah;输入功能代码int21h;从键盘输入一个数,以回车键结束movax,0;累加器清0movcl,inputbuffer+1;循环次数movch,0leabx,inputbuffer+2;装载字符存放区首地址inputone:;mulc10;movdl,[bx]cmpd

5、l,'0'jbwronginputcmpdl,'9'jawronginput;anddl,0fh;addal,dl;adcah,0;incbx;loopinputone;movn,axmovdl,0dhmovah,2int21hmovdl,0ahmovah,2int21h;ret;inputendp;;-----------------------------------------------------fractorprocnear;movcx,n;movi,1d;movm,0d;pushdxmovdi,0d;movax,di;movbx,2d;mulbx;movsi,axp

6、opdx;movoutputbuffer[si],1d;ctrli:;movc,0movdi,0d;ctrldi:;cmpdi,m;jbedone;jmpcmpc;done:pushdx;movax,di;movbx,2d;mulbx;movsi,axpopdx;movax,outputbuffer[si];movbx,i;mulbx;addax,c;;adcdx,0;;movbx,10000;divbx;movc,axpushdx;movax,di;movbx,2d;mulbx;movsi,axpopdx;movoutputbuffer[si],dx;incdi;jmpctrl

7、di;cmpc:;cmpc,0;jathree1;jmpnext;three1:;incm;movax,c;movoutputbuffer[si+2],ax;;next:incicmpcx,0jngif0;loopctrliif0:movdi,m;ret;;;;fractorendp;;-----------------------------------------------------outputprocnear;C2:pushdx;movax,di;movbx,2d;mu

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。