<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<atom:link href="https://www.gentoo-zh.org/extern.php?action=feed&amp;tid=506&amp;type=rss" rel="self" type="application/rss+xml" />
		<title><![CDATA[Gentoo中文社区 / 中断向量表]]></title>
		<link>https://www.gentoo-zh.org/viewtopic.php?id=506</link>
		<description><![CDATA[中断向量表 最近发表的帖子。]]></description>
		<lastBuildDate>Thu, 10 Nov 2022 05:28:40 +0000</lastBuildDate>
		<generator>FluxBB</generator>
		<item>
			<title><![CDATA[中断向量表]]></title>
			<link>https://www.gentoo-zh.org/viewtopic.php?pid=543#p543</link>
			<description><![CDATA[<p>这是x86系列cpu的东西,写16bit汇编,若涉及中断操作,才要弄明白中断向量表.</p><p>比如这2条指令<br />mov ah,0<br />int 16h</p><p>它就是16h中断,ah是读键功能编号,执行后,若键入a,ah回存a键的扫瞄码,al回存a键的ascii码<br />cpu如何执行int 16h? 这就需要中断向量表,电脑启动后,系统会在0:0000~0:0400h的地址上建立一个表格<br />0:0001~0:0003 共4个字节,放置一个&#039;段:偏移的地址&#039;,表示中断1的入口<br />0:0004~0:0007 共4个字节,放置一个&#039;段:偏移的地址&#039;,表示中断2的入口<br />...<br />...<br />一共256个中断(16进制0-ffh),占据0:0~0:0400h<br />cpu执行int 16h时,就会在16h * 4 的地址,取得16h的入口,保存cs,ip和flag后,就将控制权交给int16h的函式.</p><p>这是软中断,但还有硬中断,比如时脉,8h号中断,它不须要int 8h,而是直接对cpu发出中断要求,cpu收到后,和软中断一样,在中断向量表中,<br />找出int8h的时脉中断入口,运行之.....</p>]]></description>
			<author><![CDATA[dummy@example.com (batsom)]]></author>
			<pubDate>Thu, 10 Nov 2022 05:28:40 +0000</pubDate>
			<guid>https://www.gentoo-zh.org/viewtopic.php?pid=543#p543</guid>
		</item>
	</channel>
</rss>
