首页
社区
课程
招聘
哪个朋友能用通俗一点的话解释一下INT这个命令呀
发表于: 2004-8-17 22:57 7800

哪个朋友能用通俗一点的话解释一下INT这个命令呀

2004-8-17 22:57
7800
哪个朋友能用通俗一点的话解释一下INT这个命令呀!
这个命令有什么实际一点的作用啊,要是能举例子说说就更好了,呵呵
   先谢谢了

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 1
支持
分享
最新回复 (19)
雪    币: 98745
活跃值: (201039)
能力值: (RANK:10 )
在线值:
发帖
回帖
粉丝
2
如:INT21指系统功能调用
看一下汇编教程
2004-8-17 22:58
0
雪    币: 212
活跃值: (70)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
3
哦的书上只是这么说的
本指令将产生一个软中断,把控制转向一个类型号为n的软中断,该中断处理程序入口地址在中断向量表的n*4地址处的二个存储 器字(4个单元)中。
看的好郁闷啊,
2004-8-17 23:00
0
雪    币: 339
活跃值: (1510)
能力值: ( LV13,RANK:970 )
在线值:
发帖
回帖
粉丝
4
int命令我感觉和面向对象中的多态差不多,同一个东西,给的参数不一样,做的工作就不一样.
32位里面这个命令不多用
汇编书就是很郁闷,总写一些原理,其实明白过来就简单了
2004-8-17 23:04
0
雪    币: 212
活跃值: (70)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
5
INT21是系统功能调用 那么他是调用系统的什么功能啊?
   我刚开始学汇编,看的糊里糊涂的
2004-8-17 23:05
0
雪    币: 98745
活跃值: (201039)
能力值: (RANK:10 )
在线值:
发帖
回帖
粉丝
6
有很多功能,比如:键盘输入.屏幕显示.磁盘输入输出等
2004-8-17 23:24
0
雪    币: 212
活跃值: (70)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
7
^_^xiexie
2004-8-17 23:40
0
雪    币: 6075
活跃值: (2236)
能力值: (RANK:1060 )
在线值:
发帖
回帖
粉丝
8
这个查书最好不过
2004-8-17 23:44
0
雪    币: 212
活跃值: (70)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
9
能不能介绍一本书啊,电子版的,:)
2004-8-18 00:21
0
雪    币: 202
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
SLI
10
"调用API"够通俗吧?
2004-8-26 22:03
0
雪    币: 204
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
int3是调试器的入口,对吧?
2004-8-30 19:14
0
雪    币: 209
活跃值: (70)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
最初由 aNUiz 发布
int3是调试器的入口,对吧?


应叫断点中断才对!
2004-8-30 21:50
0
雪    币: 202
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
INT是中断指令
INT实际和中断向量表有关
中断向量表实际上就是中断号和中断调用的指令地址的对应表

比如这就是中断向量表
内存地址  内存内容
00000000  CS1
00000002  IP1
00000004  CS1
00000006  IP2
调用INT 0后
CS=CS1,IP=IP2
调用INT1后
CS=CS2,IP=IP2
.......
调用INT n后
CS=00000000+n*4内存中的数值
IP=00000000+n*4+2内存中的数值

不知道明白没有
就和调用函数差不多,只不过参数只能由寄存器传递
中断分为硬中断和软中断
硬中断是硬件发出的中断,比如说零作除数等等
软中断是在程序中用INT指令调用的中断,比如DOS中断,BIOS中断
过去在C语言中很方便修改这些中断地址,只不过修改过后不要忘记再调用系统的中断调用

不知道说得有没有错的地方,请指正
2004-8-31 09:57
0
雪    币: 212
活跃值: (70)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
14
引用:
-----------------------------------------
调用INT 0后
CS=CS1,IP=IP2
调用INT1后
CS=CS2,IP=IP2
.......
调用INT n后
CS=00000000+n*4内存中的数值
IP=00000000+n*4+2内存中的数值
------------------------------
按这个算,INT N 后
CS=CS N+1
IP=IP N+1
怎么会和00000000+n*4有关系啊,不懂啊,请在讲讲,谢谢了
2004-8-31 13:00
0
雪    币: 519
活跃值: (1223)
能力值: ( LV12,RANK:650 )
在线值:
发帖
回帖
粉丝
15
在内存区的前部有一个 中断向量表,说白了就是一个数组,里面每个元素都是一个指针,当中断发生时系统就根据这个指针找到相当的处理程序。指针是16位的占4个字节,所以就是n*4

现在是保护模式,都改成IDT了
2004-8-31 14:30
0
雪    币: 212
活跃值: (70)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
16
:)谢谢各位了
2004-8-31 15:26
0
雪    币: 14
活跃值: (18)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
受教
2004-8-31 22:51
0
雪    币: 204
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
18
呵呵,  中断,  这可是8086汇编必修课,当时记得有一位学长,
当然那时用386,修改中断不打草稿。。。
当时是为了在游戏中截图。。。
2004-9-2 00:22
0
雪    币:
能力值: (RANK: )
在线值:
发帖
回帖
粉丝
19
我觉得书上讲的太理论话了
能否从实际运用方面讲一下?
2004-9-2 10:03
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
20
学习学习再学习:p :p
2004-9-2 13:42
0
游客
登录 | 注册 方可回帖
返回
//