回 帖 发 新 帖 刷新版面

主题:求一个显示一份中断向量表的程序

就是在屏幕上显示一份中断向量表。
是教材的书后题,请教大家

回复列表 (共3个回复)

沙发

我知道用35H号系统调用功能

mov ah,35h
mov al,n
int 21h

这样可以得到第n号中断向量的段值和偏移量,分别在es和bx中,但我不知道如何显示出来,请各位帮忙

板凳

对于你的题目,没有必要使用int 21h的25h和35h功能设置和读取中断向量表的内容。

直接让es的值为0,用bp保存位移,每四个字节读取一次。显示中断向量时,根据四个字节中的内容加上30h或者41h,就转换为对应的ASCII字符了,最后使用int 21h的02h功能显示字符。

3 楼

你的意思是bp每次加4,将这四个字节的内容读到一个双字变量中,然后显示吗?
int 21h的2号功能将要显示的ascii码保存到dl中,也就是说每次显示一个字节,每个中断的段值和偏移各占2个字节,能正常显示吗?
加30h还是41h是由什么决定的呢?

我来回复

您尚未登录,请登录后再回复。点此登录或注册