汇编杂谈-内中断

0x000 ~ 0x3ff 的 1kb 为中断向量表,一个向量由 cs:ip 组成,共 32 位 4B,因此最多存 256 个中断向量。 例如要向第 0x80 中断向量注册 print 函数,可以使用如下代码,注意需要用 iret 返回,以为多向栈压入了 flags

1
2
3
4
5
6
mov word [0x80 * 4], print
mov word [0x80 * 4 + 2], 0
int 0x80
print:
	; todo
	iret; pop ip, pop cs, pop flags
0%