. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
刷新 | 提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->内中断
  管理员: assembly   [回复本贴] [收藏本贴] [管理本贴] [关闭窗口]
主题 : :  系统对各种中断的处理程序都放在哪了?  [待解决] 回复[ 5次 ]   点击[ 591次 ]  
sleepinglion
[帖 主]   [ 发表时间:2010-08-06 16:21 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2010-07-13 23:22
今天看内中断了。但感觉很困惑。
  书本上说CPU受到中断信息后,需要对中断信息进行处理。并且在12.6(第240页)举了个系统对0号中断的处理的例子。我就不明白了,那系统对0号中断的处理程序在哪呢?是在一个专门的文件夹中随系统加载时一起加载入内存中,还是本身就在内存中呢?那么多的中断,就对应了很多的中断处理程序。那这些中断处理程序都放在哪了呢?
masmaster
[第1楼]   [ 回复时间:2010-08-06 16:37 ]   [引用]   [回复]   [ top ] 
荣誉值:268
信誉值:12
注册日期:2010-06-18 22:19
中断例程的地址都放在中断向量表中。你可以参阅书中第三章第五小节P258
sleepinglion
[第2楼]   [ 回复时间:2010-08-06 18:50 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2010-07-13 23:22
回复:[第1楼]
------------------
我问的是:系统的中断处理程序代码都放在哪了?
masmaster
[第3楼]   [ 回复时间:2010-08-06 20:37 ]   [引用]   [回复]   [ top ] 
荣誉值:268
信誉值:12
注册日期:2010-06-18 22:19
找到中断例程的入口地址不是就找到了中断代码了吗
sleepinglion
[第4楼]   [ 回复时间:2010-08-06 23:09 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2010-07-13 23:22
回复:[第3楼]
------------------
难道你没发现吗?中断代码是放在哪呢?如果通过中断向量表定位的话,那么这些中断处理程序是不是显得太杂乱了?

C:\>debug
-d 0:0
0000:0000  68 10 A7 00 8B 01 70 00-16 00 A5 03 8B 01 70 00   h.....p.......p.
0000:0010  8B 01 70 00 B9 06 12 02-40 07 12 02 FF 03 12 02   ..p.....@.......
0000:0020  46 07 12 02 0A 04 12 02-3A 00 A5 03 54 00 A5 03   F.......:...T...
0000:0030  6E 00 A5 03 88 00 A5 03-A2 00 A5 03 FF 03 12 02   n...............
0000:0040  A9 08 12 02 A4 09 12 02-AA 09 12 02 5D 04 12 02   ............]...
0000:0050  B0 09 12 02 0D 02 E1 02-C4 09 12 02 8B 05 12 02   ................
0000:0060  0E 0C 12 02 14 0C 12 02-1F 0C 12 02 AD 06 12 02   ................
0000:0070  AD 06 12 02 A4 F0 00 F0-37 05 12 02 20 B7 00 C0   ........7... ...
-d
0000:0080  72 10 A7 00 7C 10 A7 00-4F 03 A1 05 8A 03 A1 05   r...|...O.......
0000:0090  17 03 A1 05 86 10 A7 00-90 10 A7 00 9A 10 A7 00   ................
0000:00A0  B8 10 A7 00 54 02 70 00-F2 04 BE D0 B8 10 A7 00   ....T.p.........
0000:00B0  B8 10 A7 00 B8 10 A7 00-40 01 23 04 50 09 F5 D8   ........@.#.P...
0000:00C0  EA AE 10 A7 00 EE 00 F0-B8 10 A7 00 A6 24 02 CD   .............$..
0000:00D0  B8 10 A7 00 B8 10 A7 00-B8 10 A7 00 B8 10 A7 00   ................
0000:00E0  B8 10 A7 00 B8 10 A7 00-B8 10 A7 00 B8 10 A7 00   ................
0000:00F0  B8 10 A7 00 B8 10 A7 00-B8 10 A7 00 B8 10 A7 00   ................
-
其中有的CS:IP指向的是同一处,这又是为什么呢?
liwangqiang
[第5楼]   [ 回复时间:2011-03-03 18:18 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2010-12-05 22:29
int 21h这个中断有很多功能,用ah传递参数,同样别的中断也有很多功能 所以不同的中断情况中断向量可能一样。所以有的CS:IP指向的是同一处
需要登录后才能回帖 -->> 请单击此处登录
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved