汇编语言编程实验报告.pdfVIP

  • 13
  • 0
  • 约1.56万字
  • 约 23页
  • 2018-12-29 发布于广东
  • 举报
汇编语言编程 实验报告 学号: 姓名: 成绩: 目录 一、实验一 : 错误!未定义书签。 二、实验二 : 4 三、实验三 : 8 四、实验四 : 10 五、实验五 : 错误!未定义书签。 六、实验六 : 19 七、汇编实验总结23 -2 - 实验一 一.实验题目 【汇编语言补充作业T20】编写完整程序,利用DOS系统功能调用,从键盘输入 一个字符串,并将该字符串从屏幕上换行后并输出。 二.程序流程及思路 实现字符串输入,需要分成三个步骤: 1、在数据段中定义一个缓存区为存放字符串做准备; 2、DOS系统功能调用0AH号子功能,(DS:DX) 输入缓冲区首址; 3、在输入的字符串尾加上 ‘$’字符,以作为输出结束条件。 实现字符串输出,则需要注意的问题是: 1、缓冲区第三个字节才开始存放输入的字符,前两个字节分别存放缓冲区长度 和字符串实际字符数; 2、输出回车换行可利用字符串:CR DB 0AH,0DH,’$’。 三.源程序清单 DATA SEGMENT N EQU 50 MAXLEN DB N ;缓冲区字符的最大长度 ACTLEN DB ? ;实际字符个数 STRING DB N DUP(?) ;字符空间 CR DB 0AH,0DH,$ DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK START: MOV AX,DATA MOV DS,AX LEA DX,MAXLEN MOV AH,0AH INT 21H ;字符串输入 MOV AH,09H LEA DX,CR INT 21H ;回车换行 MOV BL,MAXLEN+1 ;取实际的字符长度 MOV BH,0 LEA SI,MAXLEN+2 ;取字符开始的首地址 -3- MOV BYTE PTR [SI+BX],$ ;输出结尾要加上$ MOV DX,SI ;把开始存放字符的首地址赋给DX MOV AH,09H INT 21H MOV AH,4CH INT 21H C

文档评论(0)

1亿VIP精品文档

相关文档