- 1、本文档共12页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
b6 db1000hdup($)
b9 dbYoudonotknowthefollowingwords,pleaserememberthemagian,0ah,0dh,$
f1dbverygood,congratulationstoyou,0ah,0dh,$
callzi4;输出不认识的单词
movah,02h;回车换行
movdl,0dh
int21h
movah,02h
movdl,0ah
int21h
callzi2;将不认识的单词存到B6所指单元
callzi2;将不认识的单词存到B6所指单元
m2:incdi
movsi,z;保存SI的地址
zi4 proc
pushax
pushbx
pushcx
pushdx
pushsi
pushdi
leadx,b9;输出不认识的单词
movah,09h
int21h
leadx,b6
movah,09h
int21h
popdi
popsi
popdx
popcx
popbx
popax
ret
zi4 endp
操作说明:一、输入单词:;1、提示输入单词,输入最少5个、最多255个英文单词,每个单词不超过20个字符。2、假设直接回车,那么完毕单词输入,进入单词测试;3、输足20个字符,自动进入下一个单词的输入;4、缺乏20个字符个字符,按回车键进入下一个单词的输入。;二、单词记忆测试:1、从输入的第一个单词开场测试2、键入y(不分大小写)或n,答复是否认识,不需按回车键确认,其它按键无效;3、紧接着,没有提示,可按上移键或下移键循环测试;4、按Esc键完毕测试。三、计算单词识别率并显示输出;四、提示是否进展下一组单词的输入和测试,键入y(不分大小写)或n选择是否继续,不需按回车键确认,其它按键无效。本程序在MASMPlus1.2集成环境下通过编译,经过调试,运行正确。
CodeSegment
AssumeCS:Code,DS:Code
;-------------------------------------
;功能:显示指定地址〔Str_Addr〕的字符串
;入口:Str_Addr=字符串地址〔要求在数据段〕
;用法:OutputStr_Addr用法举例:OutputPromptStr〕
OutputMACROStr_Addr
pushax
leadx,Str_Addr
movah,9
int21h
popax
EndM
;-------------------------------------
;功能:输出一个字符
;入口:dl=要显示的字符
Output_ChrprocNear
pushax
movah,02h
int21h
popax
ret
Output_Chrendp
;-------------------------------------
;功能:输出回车换行
Output_CTLFprocNear
pushax
pushdx
movah,02h
movdl,0dh
int21h
movdl,0ah
int21h
popdx
popax
ret
Output_CTLFendp
;-------------------------------------
;功能:把AX中的二进制无符号数转换成显式的十进制ASCII码,并送显示屏显示
;入口:AX=二进制数
;出口:在当前光标位置显示转换后的ASCII码数字
Dec_ASCIIProcNear
pushdx
pushbx
pushdi
movbx,10
leadi,@@Temp_Save[6]
movBYTEptr[di],$
decdi
@@Divide:xordx,dx
divbx
ordl,30h
mov[di],dl
decdi
testax,0ffffh
jnz@@Divide
incdi
pushdi
popdx
mov
文档评论(0)