欢迎来到课桌文档! | 帮助中心 课桌文档-建筑工程资料库
课桌文档
全部分类
  • 党建之窗>
  • 感悟体会>
  • 百家争鸣>
  • 教育整顿>
  • 文笔提升>
  • 热门分类>
  • 计划总结>
  • 致辞演讲>
  • 在线阅读>
  • ImageVerifierCode 换一换
    首页 课桌文档 > 资源分类 > DOC文档下载  

    8086总汇编语言程序设计实验指导书.doc

    • 资源ID:20994       资源大小:80.50KB        全文页数:20页
    • 资源格式: DOC        下载积分:10金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要10金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    8086总汇编语言程序设计实验指导书.doc

    word汇编语言上机实验指导书一、概述上机实验总学时为16学时,其中综合性实验为2学时。实验共有6项暂定为8次,每次2学时。1.实验辅导的主要内容实验辅导的内容包括每个实验的实验目的;实验内容;对实验的算法与实验方法的必要说明;实验准备;实验步骤;实验报告要求;实验程序与参考框图。开始的实验介绍较细,后面的实验简要介绍。2.实验的软硬件要求关于汇编语言程序设计的硬件要求不高,有IBM-PC/XT即可,但应有彩色显示器以便进展图形实验。软件方面应有版包括,与MS-DOS版本配套的DEBUG程序和编辑软件其它编辑软件也可以。3.加强实践能力的培养实验目的不光是为了验证书本理论,更重要的是对实践能力的培养。其中包括:实际调试程序的能力,例如修改程序参数的能力,查看结果的能力,设置断点调试运行的能力等;开发汇编语言应用程序的能力,例如应用有关汇编软件的能力,进展系统调用和BIOS功能调用的能力,进展模块程序设计的能力等。对某一问题用不同的程序实现的能力,例如我们为每个实验提供了参考程序或程序段,目的是让每个实验者参照样板程序将实验成功地实现,在掌握其方法后,自己改变程序或自己编制程序加以实现。实验一 汇编语言运行环境与方法、简单程序设计(2学时、验证性)1.实验目的:(1) 熟悉汇编语言运行环境和方法(2)了解如何使用汇编语言编制程序(3) 熟悉DEBUG有关命令的使用方法(4) 利用DEBUG掌握有关指令的功能(5) 利用DEBUG运行简单的程序段2.实验内容(1)学会输入、编辑汇编语言程序(2)学会对汇编语言程序进展汇编、连接和运行(3)进入和退出DEBUG程序(4)学会DEBUG中的D命令、E命令、R命令、T命令、A命令、G命令等的使用。对于U命令、N命令、W命令等,也应试一下。3.实验准备(1)仔细阅读有关汇编语言环境的内容,事先准备好使用的例子。(2)准备好源程序清单、设计好调试步骤、测试方法、对运行结果的分析。(3) 编写一个程序:比拟2个字符串所含的字符是否一样。假如一样如此显示Match.,否如此显示No match!;(1)仔细阅读有关DEBUG命令的内容,对有关命令,都要事先准备好使用的例子。4.实验步骤(1)在DOS提示符下,进入MASM目录。(2)在MASM目录下启动EDIT编辑程序,输入源程序,并对其进展汇编、连接和运行。用汇编程序masm对源程序汇编产生目标文件obj。例:masm abc不断修改错误,直至汇编通过为止。用连接程序link产生执行文件exe.例:link abc执行程序可直接从DOS执行程序,即在DOS环境中,输入文件名即可。(3)详细记录每一步所用的命令,以与查看结果的方法和具体结果。5.实验报告要求(1)源程序清单。(2) 如何启动和退出EDIT程序。(3) 如何对源程序进展汇编与编辑。(4)如何启动和退出DEBUG程序。(5)整理每个DEBUG命令使用的方法,实际示例与执行结果。(6)启动DEBUG后,要装入某一个.EXE文件,应通过什么方法实现?实验二 循环程序、分支程序程序设计实验(4学时、验证性)1.实验目的:(1)掌握循环、分支程序的设计方法(2)进一步熟悉利用DEBUG程序修改参数的方法,并检查和验证结果的正确性。(3)学会针对不同的问题,选用不同的组织循环的方法。2.实验内容(1)编写一个程序S21,将内存中一组有符号的字数组按递增的序列排序,并将其中的二进制数以十六进制的形式显示在屏幕上。(2)编写一个程序S22,判别键盘上输入的字符;假如是1-9字符,如此显示之;假如为A-Z或a-z字符,均显示“c;假如是回车字符<CR>(其ASCII码为0DH),如此完毕程序,假如为其它字符如此不显示,继续等待新的字符输入。3.实验准备(1)编写实验内容要求的两个程序。(2)写出调试以上程序,即修改程序参数,检查结果的操作方法。(3)熟悉源程序汇编、连接命令的使用方法即要回答的内容。4.实验步骤(1)用EDIT或其它编辑软件,编写.ASM源程序,例如S21.ASM与S22.ASM。(2)对其进展汇编与连接,产生.EXE文件。(3)对.EXE文件进展调试运行。a.用DEBUG调试运行,学会修改AL内容的方法。b.对键入不同的字符,分别进展调试。c.在MS-DOS下运行这两个.EXE文件。5.实验报告要求(1)画出两个程序的流程图,假如要独立编写程序,应列出相应的程序清单。(2)说明本实验是如何利用DEBUG进展调试的。实验三 子程序设计(4学时、验证性)实验3.1、本实验的目的在于让同学们掌握同一模块调用的方法。1.实验目的(1)掌握主程序与子程序之间的调用关系与调用方法。(2)掌握子程序调用过程中近程调用与远程调用的区别。(3)掌握通过堆栈转送参数的方法。2实验内容(1)编写程序S31,将BUF开始的10个单元中的二进制数转换成两位十六进制数的ASCII码,在屏幕上显示出来。要求码型转换通过子程序HEXASC实现,在转换过程中,通过子程序DISP实现显示.(2)编写一个主程序S32,从键盘接收假如干个字符,然后用远调用的方法,调用子程序统计字符串中字符b的个数.子程序的参数是字符串的首地址TABLE,字符串长度N与字符b.子程序返回字符b的个数.参数传送采用堆栈实现.主程序在子程序返回后,显示字符b与其个数(设为一位十六进制数)。3实验说明(1)第一个实验程序用子程序的近程调用实现。由于在调用HEXASC子程序时,子程序又调用了DISP子程序,这叫子程序的嵌套调用。实验过程中可以从堆栈的内容看到两个子程序的返回地址值。由于是近调用,地址值只包括返回地址的段内偏移量。在每个子程序的执行中,检查CS值是不变的。(2)第二个程序是利用远调用的方法调用子程序的。在远调用情况下,主程序与子程序处在不同的逻辑代码段中,可在子程序执行中查看CS值,它与主程序中的CS值是不同的。子程序调用后,堆栈中保存了返回地址的段地址与段内偏移量。(3)第二个程序中,主程序与子程序之间参数的传送是由堆栈实现的。一段是将参数此处是串首址TABLE,串的长度N与待统计的字符“b顺序压如堆栈,在子程序调用后,通过BP指针对堆栈中的参数访问,并将统计的结果通过堆栈返回。有关该方法的原理此处不再介绍。4实验准备(1)预习子程序设计的根本方法,根据实验内容要求,画出子程序与主程序的流程图。(2)熟悉键盘键入字符串与用堆栈传送参数的程序段编制方法。5实验步骤(1)编辑、汇编两个源程序,生成相应的可执行文件.EXE(2)用DEBUG的R 命令,T 命令或G命令和D命令检查远程调用与近程调用时堆栈的变化。特别是通过堆栈传送的参数和子程序取出的参数是返回参数的详细过程。(3)检查程序执行的结果是否正确。6实验报告要求(1)分析远程调用与近程调用的区别,在用DEBUG有关命令观察时,执行过程有何不同。(2)说明用堆栈传送参数的过程与其具体方法。(3)分析实验结果与所遇到问题,并说明解决的方法。实验3.2、本程序的目的在于使读者掌握模块间调用子程序的编写方法.目的(1) 了解多模块程序设计方法。(2) 学会使用PUBLEC和EXTRN 伪指令解决模块间的符号(如变量名,标号等)通信问题。2. 实验内容S33用另一个模块编写。(2)编写一个子程序,将主程序S34指定的字符所在的地址返回给主程序,字符串(字符串以$为完毕标志)与主程序在同一个模块。(1)仔细阅读教材中有关模块间通信的方法与模块程序设计的方法。(2)弄清伪指令PUBLIC与EXTRN的功能与用法。(1)分别对实验1和实验2的主、子模块进展汇编,在连接时,将它们装配成一个以 .EXE为扩展名的可执行文件.观察汇编与连接过程中有无错误.(2)对.EXE 文件进展调试与运行.(3)将实验1中的原字符串改为由键盘输入,然后由子模块将源串中的小写字母转换为大写字母,并将源串与转换后的两个字串分两行显示出来(设键入字串长度小于80个字符).(1) 画出相应的程序流程图。(2)扼要总结多模块程序的特点和编写方法。实验四   输入/输出实验2学时 综合性实验1 实验目的(1) 掌握输入输出程序设计的概念和方法。(2) 了解PC机外围芯片8255、8259的功能。(3)学习如何在PC机上编写具有输入输出功能的程序,包括8255、8259芯片的使用方法。2 实验说明 本实验要求自行编写一个键盘输入处理程序,它可以完成键盘字符的读入并进展屏幕显示,本实验要利用IBMPC系统的硬件结构,分别使用外围芯片8255与8259。 在本例中,利用8255A的A端做数据输入,对应的端口地址为60H;利用B端口作控制端输入,端口地址为61H。8255A的控制端口地址为63H 。本例的8259中断控制器,其IRQ1端用于键盘中断请求线。键盘通过它可以响CPU发出中断请求。8259的I/O端口地址为21H,可以写入中断屏蔽字,以对8个中断源是否容许中断进展控制。在每次中断完毕时,要通过I/O端口地址20H写回一个中断完毕命令EOI ,使8259可以去除本次中断。 因此本实验既属于输入输出实验,也属于中断实验。 有关说明将详细地附在参考程序中。3实验内容 利用pc机键盘,编写一个读入并显示键盘输入的演示程序。该程序只承受常规字符包括回车键与退格键,对特殊功能键不进展处理。在程序中设置这些特殊功能键对应0编号即可,但凡检测到键位编号为0值时,均忽略对它们的处理。有键按下时,送出的扫描码的D7位为0时,当键抬起时,扫描的码D7位为1,以判定键是否被按下。4实验准备(1) 预习输入输出程序设计的特点和方法。(2) 仔细阅读参考程序,弄清外围芯片接口初始化的意义和方法。5实验步骤(1) 建立源文件,并通过汇编和连接,产生可执行文件。(2) 运行程序,观察常规字符键与功能键按下时程序的反响,6实验报告要求(1) 给出程序框图,包括主程序框图、中断处理程序框图。(2)说明输入输出程序设计的特点。(3)讨论:将SHIFT键与右SHIFT 键也进展判别处理,它们的扫描码为42与54。为记录SHIFT键的按动状态,可设一个标志单元KBFLAG,右SHIFT按下,KBFLAG的D0位置1,左SHIFT按下,KBFLAG的D1位置1,放下左右的SHIFT键,KBFLAG的相应恢复为0。当程序工作时,应能显示上档键的字符。实验五 字符处理程序实验1. 实验目的(1)熟悉串操作指令的功能与应用(2)掌握串操作指令的寻址方式与使用方法,编写常用的字符串处理程序。2实验内容(1) 字符串统计。自STRN开始的存储区中,有一个字符串,统计其中含有小写字母的个数,将统计结果以两位十进制数显示在屏幕上。(2)在给定的字符串中,删除重复的字符,其余的字符向前递补。3. 实验准备(1)熟悉字符处理的方法和字符处理程序的设计;(2)认真预习有关串操作的指令极其寻址方式的特点,能够正确使用串操作指令,并准备好数据。(3)按正常的方法将删除字符程序编成子程序,规定子程序的入口和出口参数。4实验步骤(1)用1号系统调用从键盘键入一个字符串,然后统计其中小写字母的个数。程序每次执行,都能得到不同的结果。(2)编写一个在同一个字符串中删除字符,并将其余字符向前递补的程序。5实验报告要求(1)对照参考程序,画出程序流程图。(2)总结字符串处理的编程方法,提出改良和完善此类程序的设计方案。实验六BIOS和DOS中断调用应用程序设计1. 实验目的 (1)了解 DOS、BIOS调用的根本功能、调用参数、返回参数。以与数据定义 掌握中断通信程序的设计方法。(2)掌握如何利用扫描码进展功能控制。2. 实验内容编写一个可以进展光标左右移动和插入字符的简单字处理程序。3.实验准备(1) 复习相关内容(2)了解键盘的扫描码、ASCII码与其显示字符如果存在可显示字符形式之间的对应关系。4. 实验步骤(1) 建立源文件,汇编、连接产生可执行文件。(2) 运行程序,使得可以输入字符和光标左右移动与字符的插入。5. 实验报告要求(1) 由参考程序,画出简单字处理程序框图。(2) 讨论如何实现光标的上下移动和字符的删除。源程序清单实验2(1)编写一个程序S21,将内存中一组有符号的字数组按递增的序列排序,并将其中的二进制数以十六进制的形式显示在屏幕上。;S21.ASM DSEG SEGMENT X DW 234H,32FH,90DH,123EH,-78EH,0ACFH,-234H,98H,-23DFH COUNT DW 9DSEG ENDSCSEG SEGMENT ASSUME CS:CSEG,DS:DSEGMAIN PROC FARSTART: PUSH DS XOR AX,AX PUSH AX MOV AX,DSEG MOV DS,AX MOV CX,COUNTLAB0: MOV BX,1 DEC CX JZ LAB3 PUSH CXLEA DI,XLAB1: MOV AX,DI CMP AX,DI+2 JLE LAB2 XOR BX,BX XCHG AX,DI+2 MOV DI,AXLAB2: ADD DI,2 LOOP LAB1 POP CX CMP BX,0 JZ LAB0LAB3: LEA DI,XMOV CX,COUNTLAB4: PUSH CXMOV CH,4 MOV BX,DILAB5: MOV CL,4 ROL BX,CL MOV DL,BL AND DL,0FH CMP DL,9 E LAB6 ADD DL,7LAB6: ADD DL,30H MOV AH,2INT 21H DEC CH JNZ LAB5MOV DL,20H MOV AH,2INT 21H ADD DI,2 POP CXLOOP LAB4 MOV DL,0DH MOV AH,2 INT 21H MOV DL,0AH MOV AH,2 INT 21HLEA DI,X MOV CX,COUNTLAB7: MOV BX,DI PUSH CXMOV CX,16LAB8: XOR DL,DL ROL BX,1 RCL DL,1 ADD DL,30H MOV AH,2 INT 21H LOOP LAB8 MOV DL,'B' MOV AH,2 INT 21H MOV DL,' ' MOV AH,2 INT 21H ADD DI,2 POP CX LOOP LAB7 RETMAIN ENDPCSEG ENDSEND START其中斜体字局部为以二进制输出。(2)编写一个程序S22,判别键盘上输入的字符;假如是1-9字符,如此显示之;假如为A-Z或a-z字符,均显示“c;假如是回车字符<CR>(其ASCII码为0DH),如此完毕程序,假如为其它字符如此不显示,继续等待新的字符输入。 CODE SEGMENT ASSUME CS:CODE START: MOVAH,1 INT21H ;等待键入字符,送AL CMPAL,0DH ;是否是回车符? JZDONE ;是如此转DONE退出程序 CMPAL,'0'NEXT CMPAL,'9' JACHARUP MOVDL,ALMOVAH,2 INT21H JMPSTART CHARUP: CMPAL,41HNEXT CMPAL,5AH JACHRDN DISPC: MOVDL,'c' MOVAH,2 INT21H NEXT: JMPSTART CHRDN: CMPAL,61HNEXT CMPAL,7AH JANEXT JMPDISPC DONE: MOVAH,4CH INT21H CODE ENDS END START(1)编写程序S31,将BUF开始的10个字节单元中的二进制数转换成两位十六进制数的ASCII码,在屏幕上显示出来。要求码型转换通过子程序HEXASC实现,在转换过程中,通过子程序DISP实现显示。DATA SEGMENT BUFDB 0ABH,0CDH,0DEH,01H,02H,03HDB 3AH,4BH,5CH,6FHDATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATA START:MOV AX,DATAMOV DS,AXMOV CX,10LEABX,BUF AGAIN:MOV AL, BXCALLHEXASCINCBXLOOP AGAINMOV AH,4CHINT21H HEXASC PROC NEARPUSH AXMOV DL,ALPUSHCXMOV CL,4SHRDL,CLPOPCXCALL DISP ;显示高位HEX数POPAXMOV DL,ALAND DL,0FHCALL DISPRET HEXASC ENDPDISP PROCCMP DL,9E NEXTADD DL,7 NEXT: ADD DL,30HMOV AH,2INT 21H ;显示RETDISP ENDPCODE ENDS END START(2)编写一个主程序S32,从键盘接收假如干个字符,然后用远调用的方法,调用子程序统计字符串中字符b的个数.子程序的参数是字符串的首地址TABLE,字符串长度N与字符b.子程序返回字符b的个数.参数传送采用堆栈实现.主程序在子程序返回后,显示字符b与其个数(设为一位十六进制数)。DATA SEGMENTCHAR DB 'b' BUF DB 50H, ?,50H DUP(?)CRLF DB 0DH,0AH,'$'DATA ENDS MCODE SEGMENT ASSUME CS:MCODE, DS:DATA START:MOVAX,DATAMOVDS,AXLEADX,BUFMOVAH,0AHINT21HLEADX,CRLFMOVAH,9INT21HLEASI,BUFMOVCL, SI+1MOVCH, 0 ;CX中为字符串长度INCSIINCSI ;SI指向串首址TABLEMOVAL,CHARMOVAH,0 ;AX中为待查字符PUSHSIPUSHCXPUSHAX ; 参数送堆栈CALLFAR PTR CHECKMOVDL,CHARMOVAH,2INT21HPOPAX ;统计个数在AL中,个数不能超过一位16进制数MOVDL,ALANDDL, 0FHCMPDL,9ENEXTADDDL,7 NEXT:ADDDL,30HMOVAH,2INT21H ;显示统计个数MOVAH,4CHINT21H MCODE ENDS SCODE SEGMENT ASSUME CS:SCODE CHECK PROC FARPUSHBPMOVBP,SPMOVSI,BP+10MOVCX, BP+8MOVAX, BP+6XORAH, AH AGAIN:CMPAL,SIJNENEXT1INCAH NEXT1: INCSILOOPAGAINMOVAL, AHMOVBP+10,AXPOPBPRET4 CHECK ENDP SCODE ENDS END STARTS33用另一个模块编写。EXTRN DNTOUP:FAR PUBLIC STRING1,STRING2 DATA SEGMENT STRING1 DB 'thIs is A book','$' STRING2 DB 80 DUP(?) DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS, AX CALL FAR PTR DNTOUP MOV AH,4CH INT 21H CODE ENDS END START PUBLIC DNTOUP EXTRN STRING1:BYTE,STRING2:BYTE CODE SEGMENT DNTOUP PROC FAR ASSUME CS:CODEMOVBX,0 CYCLE: MOVAL,STRING1BX CMPAL,24H ;是否是STRING1结尾 JZDONE ;是"$",转DONE CMPAL,61H ;是小写字母吗? NEXT ;不是转NEXTCMPAL,7AHJANEXT SUBAL, 20H ;转为大写字母 NEXT: MOVSTRING2BX,ALINCBXJMPCYCLE DONE: MOVAL,'$' MOVSTRING2BX,AL ;补一个$MOVDL,0DHMOVAH, 2INT21HMOVDL,0AH INT21H ;显示回车换行LEADX, STRING1MOVAH,9 INT21H ;显示源串内容MOVDL,0AHMOVAH,2 INT21H ;回车换行MOVDX,OFFSET STRING2MOVAH,9 INT21H ;显示转换后的大写串RET DNTOUP ENDP CODE ENDS END DNTOUP(2)编写一个子程序,将主程序S34指定的字符所在的地址返回给主程序,字符串与主程序在同一个模块。 EXTRN FINDC:FAR PUBLIC STRN DATA SEGMENT STRN DB 'LINK DISPLAY SUBROUTING$' ADDR DW ? DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START:MOVAX,DATA MOVDS,AX MOVAH,1 INT21H CALLFAR PTR FINDC MOVADDR, DI MOVAH,4CH INT21H CODE ENDS END START PUBLIC FINDC EXTRN STRN:BYTE CODE SEGMENT ASSUME CS:CODE FINDC PROC FAR START: LEADI,STRN AGAIN:CMPBYTE PTRDI,'$' JZDONE CMPAL,DI JNZNEXT DONE1:RET NEXT:INCDI JMPAGAIN DONE:MOVDI,0FFFFH ;找不到返回0FFFFH JMPDONE1 FINDC ENDP CODE ENDS END START实验4S4利用pc机键盘,编写一个读入并显示键盘输入的演示程序。该程序只承受常规字符包括回车键与退格键,对特殊功能键不进展处理。在程序中设置这些特殊功能键对应0编号即可,但凡检测到键位编号为0值时,均忽略对它们的处理。有键按下时,送出的扫描码的D7位为0时,当键抬起时,扫描的码D7位为1,以判定键是否被按下。PUBLIC SCANTAB,BUFFER,BUFPT1,BUFPT2 ,KBFLAGSTACK1 SEGMENTDB 256 DUP(?)STACK1 ENDSDATA SEGMENTBUFFERDB 16 DUP(0) ;定义10个字节的键盘缓冲区BUFPT1DW 0 ;指向键盘缓冲区的起点,头取BUFPT2DW 0 ;指向键盘缓冲区的终点,尾存;注意当BUFPT1=BUFPT2时,明确缓冲区空KBFLAGDB 0PROMPTDB '-kbd_io program begin -',0DH,0AH,'$'SCANTABDB 0,0,'1234567890-=',8,0DB 'QWERTYUIOP',0,0DB 'ASDFGHJKL',3BH,27H,0DHDB 'ZXCVBNM,./',0DB 20H,0,0,0,0,0,0,0,0,0,0,0,0,0;由于不同键盘按键与分布各不一样,因此在调试时可能产生按键和显示有差异 DB '789-456+1230.'EVEN OLDIP9 DW ? OLDCS9 DW ? DATA ENDS EXTRN KBINT: FAR ;外部引用说明 CODE SEGMENT ;主程序段 ASSUME CS:CODE ,DS:DATA START:MOVAX,DATAMOVDS,AX;建立自行设计的中断服务程序,写自行设计的中断处理程序入口偏移量到矢量表中CLI ;关中断,以防引起混乱MOVAX,3509H ;取类型9的中断向量INT21HMOVOLDCS9,ESMOVOLDIP9,BXPUSHDSLEADX,KBINTMOVAX,SEG KBINTMOVDS,AXMOVAX,2509H ;设置类型9的中断向量INT21HPOPDSINAL,21HANDAL,0FDH ;允许定时器和键盘中断的控制字送8259OUT21H,ALLEADX,PROMPT ;在屏幕上显示-kbd_io program begin -MOVAH,9 INT21H STI ;开中断;程序功能:读键盘并显示字符 FOREVER: CALL KBGET ;读缓冲区字符 TESTKBFLAG,80H ;如果输入任意功能键,如此使KBFLAG=80,退出 JNZENDINT PUSHAX CALLDISPCHAR ;显示接收字符 POPAX CMPAL,'A' JZENDINT ;输入A完毕程序 CMPAL,0DH ;是回车符吗? JNZFOREVER ;不是再接收 MOVAL,0AH CALLDISPCHAR ;是,换行JMPFOREVER ;接收下一行字符 ENDINT:MOVDX ,OLDIP9 MOVAX ,OLDCS9 MOVDS,AX MOVAH,25H MOVAL,9 INT21H MOVAH,4CH INT21H;KBGET1取缓冲区字符->(返回 KBGET PROC NEAR PUSHBX CLI MOVBX,BUFPT1 CMPBX,BUFPT2 JNZKBGET2 ;缓冲区不空,转KBGET

    注意事项

    本文(8086总汇编语言程序设计实验指导书.doc)为本站会员(夺命阿水)主动上传,课桌文档仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知课桌文档(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-1

    经营许可证:宁B2-20210002

    宁公网安备 64010402000986号

    课桌文档
    收起
    展开