微机原理汇编语言之猜数字游戏分解.docx

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
猜数字游戏设计文档 (源代码是上传文档加上去的,见最后面) 需求分析 首先,用户输入猜测次数, 游戏开始循环。 数字有四位,格式为: 1234 每次用户输入一个数字,游戏都会显示四个字符: A 代表数字和位置都正确 B 代表数字正确, 但是位置不对 ?代表没有这个数字 比如: 假如要猜的数字是4321, 用户输入4321, 程序显示AAAA, 用户获胜! 假如要猜的数字是4321, 用户输入1234, 程序显示BBBB 假如要猜的数字是4321, 用户输入5674, 程序显示???B 假如要猜的数字是4321, 用户输入5678, 程序显示???? 如果在给定次数内,用户猜对,则用户胜利,游戏结束; 如果在给定的次数里, 用户没有猜到,则用户失败,游戏结束。 概要设计 采用封装函数的思想,将 生成随机数、比较用户输入结果 分别封装成函数 游戏分成四个功能模块 生成四个随机数 用户输入猜测次数 用户猜数 显示猜测结果戏 总体流程图: 开始游戏 生成随机数 输入游戏次数 输入数字 判断数字 N 游戏次数是否用完 输出判断结果 N 判断游戏是否成功 fail N success 输出结果 Y 游戏结束 生成随机数 流程图: 生成1个随机数 判断是否跟已有随机数重复 重复 不重复 将随机数保存到S3 判断是否生成4个随机数 N Y 比较输入结果 流程图: 判断一个字符是否在系统生成的S3中 N 置 ‘ ?‘ Y 判断是否在对应下标 N 置 ‘B’ Y 置 ‘A’ 判断4个字符是否比较完 N Y 详细设计 输入数字,游戏次数 使用DOS功能调用来实现键盘输入。输入单个字符(游戏次数)用1号功能,输入字符串(数字)用9号功能。 生成随机数 读取时钟数值,进行运算得到随机数。 比较结果 首先将输入的数字和生成的四位随机数进行比较,按照要求输出判断结果;然后,判断游戏次数是否用完。 输出结果 按照要求输出结果,分游戏成功和游戏失败两种情况。 运行调试 源代码: DATA SEGMENT S3 DB 4 DUP(30H), :IS the random number. ,0AH,0DH,$ ;产生的4个数 NUM DB 5,0,5 DUP(?),0AH,0DH,$ ;输入缓冲区 RESULT DB AAAA,0AH,0DH,$ GUS DB 4 DUP(30H),0AH,0DH,$ ;用户输入的4个数 S1 DB Please input times from 1 to 9,0AH,0DH,$ S2 DB Please input random number,0AH,0DH,$ S4 DB Your input is wrong,0AH,0DH,$ FAIL DB You have no time, You lost the game!,0AH,0DH,$ WIN DB Congratulations! You succeed!,0AH,0DH,$ DATA ENDS STACK1 SEGMENT PARA STACK DB 10 DUP(0) STACK1 ENDS COSEG SEGMENT ASSUME CS:COSEG, DS:DATA START: MOV AX,DATA MOV DS,AX MOV ES,AX LEA SI,S3 CALL RANDOM ;调用封装的函数RANDOM产生随机数 ;-------显示系统生成的4个随机数-------- ;MOV DX,OFFSET S3 ;MOV AH,09H ;INT 21H ;-------提示输入猜测次数,并保存在BL-------- MOV DX,OFFSET S1 MOV AH,09H INT 21H MOV AH,01H ;输入次数 INT 21H SUB AL,30H MOV BX,0 MOV BL,AL ;猜测次数入BL MOV AH,02H ;回车换行 MOV DL,0DH INT 21H MOV AH,02H MOV DL,0AH INT

文档评论(0)

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

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

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档