初级程序的编写及调试.doc

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
初级程序的编写与调试 实验目的 掌握无条件转移指令、条件转移指令; 掌握利用DOS功能调用INT21H的2号和9号功能进行屏幕显示的方法; 掌握直接向视频RAM送ASCII码进行屏幕显示的方法; 掌握屏幕字符显示程序PC微机 DOS操作系统或 Windows 操作系统 MASM.EXE,LINK.EXE,DEBUG.COM或宏汇编集成环境 实验要求 仔细阅读有关无条件转移指令、条件转移指令的内容; 阅读利用DOS功能调用INT21H的2号和9号功能进行屏幕显示的内容; 阅读实验指导书中的字符串屏幕显示程序、字符屏幕显示程序、直接向VRAM送ASCII码显示字符程序、用字符搜索法确定字符串长度程序、16进制数化ASCII码的一般方法的程序段,调试上述程序。 主要实验步骤及结果 1.利用INT 21 0AH号功能调用显示字符串。 (1)用A命令在100H处键入下列程序: MOV AH, 9 MOV DX,110 INT 21 INT 20 (2)用A命令在110H处键入下列字符串的ASCII码: DB This is a sample!$ (3)用N命令和W命令将此程序(包括数据区)存入文件名为AA.COM的磁盘文件中。(存入前BX:CX必须置为文件长度值)。 (4) 2.利用INT 21H 2号功能显示字符 (1)用A命令在100H处键入下列程序: XOR DL,DL MOV CX,100 LOP: MOV AH,2 INT 21 INC DL PUSH CX MOV CX,8 DELY: PUSH CX MOV CX,0 J: LOOP J POP CX LOOP DELY POP CX LOOP LOP INT 20 (2)用G命令运行程序,即在屏幕上依次缓慢的显示256个ASCII字符。仔细观察每个字符,和IBM-PC ASCII码表对照,看07H-0DH处控制字符显示结果与表上有何不同? 表中的07H-0DH处是用字符表示,如07H为BEL,0DH为CR,但是显示出来的是用小符号来表示,如07H用笑脸表示,0DH直接是以回车来表现。 (3)按CTRL+BREAK退出此程序,若一次不行可多做几次。 3.直接向VRAM送ASCII码显示字符 (1)用A命令在100H处键入下列程序 MOV AX,B000 MOV DS,AX XOR AL,AL XOR BX,BX MOV CX,100 LOP:MOV [BX],AL INC BX INC AL PUSH CX MOV CX,8 DELY:PUSH CX MOV CX,0 J: LOOP J POP CX LOOP DELY POP CX LOOP LOP INT 20 (2)用N命令和W命令将此程序存入BB.COM文件中。(一定要先存入!) (3)用G命令运行此程序,仔细观察每一个ASCII码显示结果,并和字符表及上一道程序运行情况进行对照,其控制字符区(07-0DH)显示结果和INT 21H 2号功能调用有何不同? 控制字符区在该程序中没有显示,在上一个程序中显示为笑脸等符号。 4.用字符搜索法确定字符串长度 (1)用A命令在100H开始的内存处键入下列程序 JMP START DB This is the program to measure DB the length of a string!$ START: MOV BX,102 MOV AL,24 XOR CL,CL LOP: CMP AL,[BX] JZ EXIT INC BX INC CL JMP LOP EXIT: INT3 (2)用G命令运行此程序,并检查CL的统计长度是否与你自己统计的实际长度是否一样? 5.用字符搜索法确定字符串长度 (1)用A命令在100H处键入下列程序: MOV SI,0 MOV BL,10 LOP: MOV DL,[SI] MOV CL,4 SHR DL,CL CMP DL,0A JC J1 ADD DL,7 J1: DL,30 MOV AH,2 INT 21 MOV DL,[SI] AND DL,0F CMP DL,0A JC J2 ADD DL,7 J2: ADD DL,30 MOV AH,2 INT 21 MOV DL,20 MOV AH,2 INT 21 INC SI DEC BL JNZ LOP INT 20 (2)用N,W命令将此程序用CC.COM文件名存入磁盘。 (3)用Q命令退出DEBUG。 (4)在DOS命令状态下直接运行CC.COM命令文件,应在屏幕上显示出内存从0000H开始的16个字节的内容,若有错误,用DEBUG检查之。 (5)自编程序:修改上面程序,使除以16进制数形式显示内存内容外,还能在其右边显示该16进制码所对应的AS

文档评论(0)

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

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

1亿VIP精品文档

相关文档