网站大量收购独家精品文档,联系QQ:2885784924

课程设计报汇编语言-1.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
课程设计报汇编语言-1

计算机原理与汇编语言设计报告 题 目: 用汇编语言编写一个程序,在屏幕上接收一串带数字、字母及其它字符的字符串,然后统计其中数字、字母、单词的个数,并显示出来 课程设计的题目 课程设计题目:用汇编语言编写一个程序,在屏幕上接收一串带数字、字母及其它字符的字符串,然后统计其中数字、字母、单词的个数,并显示出来’0’~’9’,字母’A’~’Z’ 和’a’~’z’ ,其它。对应的ASCII码为 30H~39H, 41H~5AH, 61H~7AH,... 程序实现 start: MOV AX,DATAS MOV DS,AX LEA DX,STRING1 ;显示输入提示信息Please input a string,LEA取指功能实现。 MOV AH,09H ;09H为字符串输出 INT 21H ;中断调用,INT 21H 中断为DOS中断 MOV CX,100 ;设置循环次数足够大,CX用来保存循环指令 L1:MOV AH,01H ;中断调用,单字符输入,01H带回显的键盘输入, INT 21H ;输入符号的ASCII代码在AL寄存器中。 DATAS SEGMENT STRING1 DBPlease input a string:$ ;输入提示信息 STRING2 DBNumber of chars:$ ;各类字符提示信息 STRING3 DBNumber of digits:$ STRING4 DBNumber of others:$ CHARS DB 0 ;字母 DIGIT DB 0 ;数字 OTHERS DB 0 ;其他 DATAS ENDS STACKS SEGMENT ;此处输入堆栈段代码 STACKS ENDS CODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKS start: MOV AX,DATAS MOV DS,AX LEA DX,STRING1 ;显示输入提示信息Please input a string,LEA取指功能实现。 MOV AH,09H ;09H为字符串输出 INT 21H ;中断调用,INT 21H 中断为DOS中断 MOV CX,100 ;设置循环次数足够大,CX用来保存循环指令 L1:MOV AH,01H ;中断调用,单字符输入,01H带回显的键盘输入, INT 21H ;输入符号的ASCII代码在AL寄存器中。 CMP AL,0DH ;若输入回车符则结束,CMP比较指令。 如果为数字:30H---39H JZ OVER2 ;JZ条件转移指令,根据ZF进位转移 CMP AL,30H ;若30H(0),OTHERS++ JB OTHER ;JB条件转移指令,为低于不高于指令。 CMP AL,39H ;若39H(9),跳转进一步比较 JA HIGHER1 ;JA条件转移指令。为高于/不低于指令。 JMP DIGITAL ;DIGIT++,JMP无条件转移指令, HIGHER1:CMP AL,41H ;若IF41H(A),OTHERS++ 如果为大写字母“A-Z”字符:41H---5AH JB OTHER CMP AL,5AH ;若IF5AH(Z),跳转继续比较 JA HIGHER2 JMP CHAR ;ALPHAU++ HIGHER2:CMP AL,61H ;若IF61H(a),OTHERS++ 如果为小写字母字符“a-z”字符:61H--7AH JB OTHER CMP AL,7AH ;若IF7AH(z),OTHERS++ JA OTHER JMP CHAR ;ALPHAU++ JMP OVER ;比较结束 OTHER:

文档评论(0)

exianwhan + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档