郑州大学机械学院2010级微机原理课程设计第47题软件设.doc
上传人:qw****27 上传时间:2024-09-12 格式:DOC 页数:4 大小:156KB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

郑州大学机械学院2010级微机原理课程设计第47题软件设.doc

郑州大学机械学院2010级微机原理课程设计第47题软件设.doc

预览

在线预览结束,喜欢就下载吧,查找使用更方便

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

47.将字符串补齐为某个特定长度提示输入字符串;输入任意字符串string,点击Enter结束输入;提示输入数字;输入任意数字int,点击Enter结束输入;提示输入字符;输入任意字符ch,点击Enter结束输入如果字符串string长度大于int,则截取string的前int位输出;如果字符串string长度小于int,则在string后面添加字符ch,直至使字符串长度等于int;如果字符串string长度等于int,则直接输出字符串。点击Enter程序退出DATASEGMENTS1DB0DH,'ENTERASTRING:$'S2DB0DH,0AH,'ENTERANUM:$'S3DB0DH,0AH,'ENTERACHARACTER:$'S4DB0DH,0AH,'THERESULTIS:$'BUFDB100,0,100DUP(0)N0DB0;输入的数字N1DB0;输入的字符串长度N2DB0;输入的字符DATAENDSCODESEGMENTMAINPROCFARASSUMECS:CODE,DS:DATASTART:PUSHDSXORAX,AXPUSHAXMOVAX,DATAMOVDS,AXMOVAH,9;提示输入字符串MOVDX,OFFSETS1INT21HMOVAH,0AH;输入字符串MOVDX,OFFSETBUFINT21HMOVBX,OFFSETBUF;保存输入的字符个数INCBXMOVAL,[BX]MOVN0,ALMOVAH,9;提示输入数字MOVDX,OFFSETS2INT21HPUT:MOVAH,07H;输入数字INT21HCMPAL,'0'JBPUTCMPAL,'9'JAPUTMOVDL,ALSUBAL,30HMOVN1,AL;保存输入的数字MOVAH,2;显示输入的数字INT21HMOVAH,07H;输入数字(用不回显方式)INT21HCMPAL,0DH;过滤掉数字外的字符JZNEXTNEXT:MOVAH,9;提示输入字符MOVDX,OFFSETS3INT21HMOVAH,1;输入字符INT21HMOVN2,ALMOVAH,1;输入字符INT21HCMPAL,0DHJZNEXT1;保存输入的字符NEXT1:MOVAH,9;显示输出结果提示MOVDX,OFFSETS4INT21HMOVAL,N1;输入的数字MOVAH,N0;输入的字符串长度MOVCH,0MOVCL,N1MOVBX,OFFSETBUFADDBX,2CMPAH,ALJAEEQU1;输入的字符串长度>=输入的数字SUBAL,AH;需在字符串尾部补充字符的个数MOVCL,AL;需填充字符的个数ADDBL,N0;BX指向字符串尾部MOVAL,N2;用输入的字符填充RE_FILL:MOV[BX],ALINCBXLOOPRE_FILLMOVCH,0MOVCL,N1MOVBX,OFFSETBUFADDBX,2EQU1:MOVCH,0MOVCL,N1MOVBX,OFFSETBUFADDBX,2CUT:MOVAH,2MOVDL,[BX]INT21HINCBXLOOPCUTEXIT1:MOVAH,4CHINT21HRETMAINENDPCODEENDSEND1、字符串长度小于int时的运行结果:2、字符串长度大于int时:3、字符串长度等于int时: