首页 汇编N的阶乘程序

汇编N的阶乘程序

举报
开通vip

汇编N的阶乘程序CRLF MACRO ;回车,换行 MOV AH, 02H MOV DL, 0DH INT 21H MOV AH, 02H MOV DL, 0AH INT 21H ENDM DATA SEGMENT MESS1 DB 'INPUT THE NUMBER ACCORDING TO HEXNUM!',0DH,0AH,'$' MESS2 DB 'THE RESULT IS: $'...

汇编N的阶乘程序
CRLF MACRO ;回车,换行 MOV AH, 02H MOV DL, 0DH INT 21H MOV AH, 02H MOV DL, 0AH INT 21H ENDM DATA SEGMENT MESS1 DB 'INPUT THE NUMBER ACCORDING TO HEXNUM!',0DH,0AH,'$' MESS2 DB 'THE RESULT IS: $' ERROR DB 'INPUT ERROR! INPUT ONCE MORE!',0DH ,0AH,'$' LEN DW 1 CY DW ? BUF DW 256 DUP(0) DATA ENDS STACK SEGMENT STACK 'STACK' DW 32 DUP(?) STACK ENDS CODE SEGMENT ASSUME CS: CODE, DS:DATA, ES:DATA, SS:STACK START: MOV AX, DATA MOV DS,AX MOV ES, AX MOV AH, 09H MOV DX,OFFSET MESS1 INT 21H ;显示输入提示信息 CALL GETNUM ;读取键入的N值 MOV BP, DX ;N值送BP CMP BP, 0 JZ EEE CMP BP, 1 JZ EEE ;N=0或N=1则转EEE MOV SI, OFFSET BUF ;缓冲区首址 MOV [SI],DX ;缓冲区初始化为值N XXX: DEC BP ;N值减1 CMP BP,0001H JZ LLL ;若为1则转LLL XOR BX,BX ;偏移指针清0 MOV WORD PTR CY,0 ;进位单元清0 MOV CX,LEN ;当前结果长度送CX TTT: MOV AX, [SI+BX] MUL BP ;相乘 ADD AX,CY ;加低位进位 JNC JJJ ;结果无进位转JJJ INC DX ;有进位将高位单元加1 JJJ: MOV [SI+BX],AX ;结果送缓冲区中 MOV CY,DX ;高位单元送进位单元 INC BX INC BX ;一个字长度 LOOP TTT ;循环 CMP DX, 0000H JZ BBB ;最后1次的进位为0则转BBB INC WORD PTR LEN ;长度加1 MOV [SI+BX],DX ;进位送缓冲区中 BBB: JMP XXX EEE: MOV SI,OFFSET BUF MOV WORD PTR [SI],1 ;结果为1 LLL: MOV AH, 09H MOV DX,OFFSET MESS2 INT 21H ;显示 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 头 MOV CX,LEN MOV BX,CX ;长度 DEC BX SHL BX,1 ;1个字为两个字节 CCC: MOV AX, [SI+BX] CALL DISP DEC BX DEC BX ;显示结果 LOOP CCC MOV AX,4C00H ;结束 INT 21H DISP1 PROC NEAR ;显示字符(AL) MOV BL, AL MOV DL, BL MOV CL, 04 ROL DL, CL AND DL, 0FH CALL DISPL ;显示高位 MOV DL, BL AND DL, 0FH CALL DISPL ;显示低位 RET DISP1 ENDP DISPL PROC NEAR ;显示一位(DL=0XH) ADD DL, 30H CMP DL, 3AH JB DDD ADD DL, 27H DDD: MOV AH, 02H INT 21H RET DISPL ENDP DISP PROC NEAR ;显示4位数(HEX) PUSH BX PUSH CX PUSH DX PUSH AX MOV AL, AH CALL DISP1 POP AX CALL DISP1 POP DX POP CX POP BX RET DISP ENDP GETNUM PROC NEAR ;字符匹配程序 PUSH CX REGET: XOR DX, DX GGG: MOV AH, 01H INT 21H CMP AL, 0DH JZ PPP CMP AL, 20H JZ PPP SUB AL, 30H JB KKK CMP AL, 0AH JB GETS CMP AL,11H JB KKK SUB AL, 07H CMP AL, 0FH JBE GETS CMP AL, 2AH JB KKK CMP AL, 2FH JA KKK SUB AL, 20H GETS: MOV CL, 04H SHL DX,CL XOR AH, AH ADD DX ,AX JMP GGG KKK: CRLF MOV AH, 09H MOV DX,OFFSET ERROR INT 21H JMP REGET PPP: PUSH DX CRLF POP DX POP CX RET GETNUM ENDP CODE ENDS END START
本文档为【汇编N的阶乘程序】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_505156
暂无简介~
格式:doc
大小:32KB
软件:Word
页数:4
分类:其他高等教育
上传时间:2011-12-21
浏览量:71