检测点12·1
(1)用debug查看内存,情况如下:
000:0000 68 10 A7 00 8B 01 70 00-16 00 9D 03 8B 01 70 00
则3号中断源对应的中断处理程序的入口地址为:—70:18b—。
(2)存储N号中断源对应的中断处理程序入口的偏移地址的内存单元的地址
为:N*4 。
存储N号中断源对应的中断处理程序入口的段地址的内存单元的地址为:—N*4+2—。
真是的,在这12·4节前根本就没有将什么在高字,什么在低字,得往后翻。
实验1 2 编写O号中断的处理程序
编写0号中断的处理程序,使得在除法溢出发生时,在屏幕中间显示字符串“divide error!”,然后返回到DOS。
要求:仔细跟踪调试,在理解整个过程之前,不要进行后面课程的学习。
code segment
assume cs:code
db 16 dup (0)
start:mov ax,cs
mov ss,ax
mov sp,10h
mov ds,ax
mov si,offset d0
mov ax,0
mov es,ax
mov di,200h
mov cx,offset d0end-d0
cld
rep movsb
mov word ptr es:[2],0
mov word ptr es:[0],200h
int 0
mov ax,4c00h
int 21h
d0:jmp short d1
sasa db 'divide error!'
d1:mov ax,cs
mov ds,ax
mov ax,0b800h
mov es,ax
mov di,160*12+60
mov si,202h;就是这里,用offset操作符取的地址是错误的
mov ah,2
mov cx,13
s1:mov al,[si]
mov es:[di],ax
add di,2
inc si
loop s1
mov ax,4c00h
int 21h
iret
d0end:nop
code ends
end start
- [kanwangxue] 感觉楼主很乖的。有点孩子气。呵呵。 01/27 08:58
- [kanwangxue] it界,进去干嘛啊,到时候自己牛比了,首先写一个自己的语言,自己用。进入IT界不就是随波做流吗/?他 01/27 08:57
- [kanwangxue] 哥们,不要为了赚钱而学计算机。 计算机是年轻时候干的, 30岁后可以开始想赚钱,年轻嘛,不要这么悲 01/27 08:50
- [游客] 怎么说? 01/26 16:22
- [游客] 你这不行啊,差远了! 01/10 22:29
- [chinatree] 谢谢你。相信你也会成功的。 01/09 14:22
- [landyking] 哥们儿,好久不见。相信你会成功的。 12/02 23:34
- [chinatree] 哇哇,被挖坟了。莫生气,只是感觉谦虚些好,就算你的程序真的是史上最强的,也别说出来嘛,自己偷着乐就行 11/20 00:41
- [xiaoyao2012] 你的程序和我的程序比较也不见得你的程序又节约空间,在某种意义上说你的程序用了没学的指令,所以不见得你 11/19 15:39
- [heliang6291] 一起加油啊 07/02 02:45
- [游客] 急需一个汇编程序大作业。。。。。。。。。。。。。。。。。。。??? 12/28 16:50
- [游客] 这么多人喜欢你,我嫉妒了。但你不可以喜欢那么多,允许你在我不需要你的时候帮别人。如果我需要立叫立到。 11/13 13:11
- [tily] 兄弟 我来看你啦 呵呵 最近可好呀 09/26 22:17
- [stqcw] 能加我qq吗?1270911891 我在做课程设计2的时候 遇到点问题 09/24 09:16
- [stqcw] 能加我qq吗?1270911891 我的环境还是有点问题。按下A的时候不能显示满屏的A 09/20 09:36
- [stqcw] 牛人 我在xp里面运行王爽 汇编第二版 p280的例子 按下esc键没反应 呀 怎样在虚拟机里配置一 09/17 15:18
- [landyking] 呵呵,交个朋友,共同学习. 09/08 00:03
- [luyingdzx] 能知道你的QQ吗?或者请加一下我的QQ271190440,可以吗 虽然在论坛能获得解答,但是有的问 08/07 21:32