汇编语言中断程序设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

汇编语言程序设计实验报告

学院:计算机科学与技术专业:计算机科学与技术班级:计科131

LEA DX,FNAME

MOV CX,0 ;语句1

INT 21H

JC EXIT

MOV FNUM,AX

MOV BX,AX ;语句2

MOV CX,100

MOV AH,40H

LEA DX ,BUF

INT 21H

MOV BX,FNUM

MOV AH,3EH

INT 21H

EXIT:

MOV AH,4CH

INT 21H

CODE ENDS

END START

使用相应的文本编辑器建立文件,内容如上所示。

2.汇编并运行此程序后,在当前目录建立的文件名是什么其内容是什么

1>汇编:

C:\masm> masm lab7;

2>连接:

C:\masm> link lab7;

3>运行:

C:\masm> lab7

3.若将语句1 改为mov cx,1,则运行情况与前面会有什么区别

4.若将语句1 改为mov cx,2,则运行结果同上会有什么不同并简要说明此语句的作用.

5.若将语句2 改为mov bx,1,则运行结果会有什么不同简要说明则语句的作用.

实验二:编写0 号中断的处理程序,使得在除法溢出发生时,在屏幕中间显示字符串“divide error!”,然后返回到DOS。源程序下:

assume cs:code

code segment

start:

mov ax,cs

mov ds,ax

mov si,offset do

mov ax,0

mov es,ax

mov di,200h

mov cx,offset doend-offset do ;安装中断例程cld

rep movsb

mov word ptr es:[0],200h

mov word ptr es:[2],0 ;设置中断向量表

mov dx,0ffffh

mov bx,1 ;测试一下

div bx

mov ax,4c00h

int 21h

do:jmp short dostart

db 'divide error!'

dostart:

mov ax,0

mov ds,ax

mov si,202h

mov ax,0b800h

mov es,ax

mov di,160*12+60

mov cx,13

s:

mov al,ds:[si]

mov ah,15

mov es:[di],ax

inc si

inc di

inc di

loop s

mov ax,4c00h

int 21h

doend:nop

code ends

end start

实验结果3.若将语句1 改为mov cx,1,文件为只读。

4.若将语句1 改为mov cx,2,文件为隐藏。

5.若将语句2 改为mov bx,1,在屏幕上显示写入的字符。

实验总结

这次实验没有花费很多时间,因为代码都是现成的,就只按照要求修改代码并运行,比较了其之间的不同。实验二修改了在屏幕上显示的字符的颜色和位置,但是背景色还是没能修改成功。

见签名:年月日

相关文档
最新文档