求神,如何通过汇编语言实现猜数字游戏
;此代码尚未经过测试。
数据段
LIMITDB?
AnswerDB 4?DUP(?)
ReplyDB ' AB?
数据端
代码段
ASSUMECS:代码,DS:数据
开始:
MOVAX,数据
MOVDS,AX
;?随机生成一个谜
MOVAX,SEG?回答
移动,斧头
MOVDI,OFFSET?回答
MOVCX,4
Radi2c:
MOVAL,0AH
CALLRad _ X
口服,30小时
STOSB
LOOPRadi2c
;输入允许的猜测次数。不调试只能输入一位数字。
输入_D:
MOVAH,1
INT 21H
ANDAL,0FH
移动极限,铝
;?猜猜?开始
极限运动
化学生物战(Chemical and Biological Warfare)
MOVCX,AX
GLoop:
PUSHCX
MOVCX,4
索德。DH;尝试的错误计数器。
MOVSI,OFFSET?回答
猜猜看:
XORBX
MOVAH,8岁
INT 21H
CMPAL,埃斯:[斯]
JZOUTREPLY
INCDH
INCBX
MOVDI,OFFSET?回答
CLD
PUSHCX
MOVCX,4
REPNZSCASB
POPCX
JZOUTREPLY
INCBX
回复:
MOVDL,回复[BX]
MOVAH,2
INT 21H
INCSI
LOOPGuess
POPCX
TESTDH,DH
JZENDLOOP
LOOPGLoop
结束循环:
;胜利信息可以在这里显示。
退出:
MOVAX,4C00H
INT 21H
;?随机数生成,范围是0~AL,AL不要超过100。
;?AL & lt-拉德X
Rad _ XPROC
佐拉,啊
INT 1AH
XCHGAL,DL
DIVDL
XCHGAH,AL
Rad _ XENDP
共端
结束开始