打印

疑问:highgear 大侠说8051不是向量中断?

[复制链接]
楼主: 刘前辈
手机看帖
扫描二维码
随时随地手机跟帖
61
菜农大叔一言九鼎~~~ :victory:

使用特权

评论回复
62
刘前辈|  楼主 | 2011-11-4 11:23 | 只看该作者
本帖最后由 刘前辈 于 2011-11-4 11:26 编辑
#44楼highgear:

早起的虫子有鸟吃。醒得早,没事干,查了查资料,没有发现“向量中断”的中文确切定义,只有英文:

.

哈……,连“向量中断”的英文都不知道如何写的人,在这大谈向量中断的概念?

教教highgear 如何搜索“向量中断”的中文确切定义:


.
.
6800条,慢慢看……常年**起那么早,那么努力,也没用啊。

、、

使用特权

评论回复
63
刘前辈|  楼主 | 2011-11-4 12:59 | 只看该作者

单片机=单片微型计算机。

本帖最后由 刘前辈 于 2011-11-4 21:28 编辑
#44楼highgear:
   vectored interrupts An efficient method implemented in hardware for dealing with many different devices, each of which is capable of interrupting and each different type of device requiring a unique interrupt handler. The interrupt vector is an array of interrupt handler locations. When a device successfully interrupts the processor, it supplies the processor with a reference to its entry in the interrupt vector. The processor then uses this to transfer control to the appropriate interrupt handler.

上面的意思很明确,中断向量是一组中断服务地址, 当..., 设备向 cpu 提供在中断向量中的入口地址。因此, 向量中断的判据是是否存在一组的中断服务地址。
很显然,8086存在; 而8051, 严格地说,不存在。

.
highgear 讲课真是越讲越岔道了,“it supplies the processor with a reference to its entry in the interrupt vector.”翻译成中文:
“设备向 cpu 提供在中断向量中的入口地址。”


这也难怪你说8051不是向量中断了;再把这段英文好好看看,哪位网友英文好,也帮忙翻译一下,提示一点:“ a reference to its entry ”its  entry前面有形容词短语的别给漏了:“设备向 cpu 提供在中断向量指向的入口地址的a reference to 。”

告诉过你了,——设备向CPU只能提供中断类型号,highgear 大侠自己讲的 时钟中断类型号为8。
  这个8 就是时钟芯片外部设备向CPU提供的中断向量——中断类型号,根本不是时钟中断ISR入口地址(英文注释讲了,不过是个索引index)。——瞎讲一气,忽悠菜鸟。

     向量中断是硬件中断,在PC电路中,外部设备的中断向量是通过8259编码器经外部数据总线提供给X86 CPU的,是由硬件连线唯一确定、不可变的。因此它只能作为索引,而不可能作为ISR入口地址。

    相对于 8051:单片机的基本概念,简单说,就是把PC机的外设芯片和CPU 都集成到一个芯片里。哈哈,PC机8259 外设中断向量编码器(相应硬件电路)也集成到8051芯片内部去了!使得所有外部设备中断触发管脚,都同样能在芯片内部分配有一个唯一的中断向量——ISR入口地址。

              单片机= 单片微型计算机。

     这种概念,论坛上的坛友都懂,唯有PC机大侠highgear 弄不明白。什么“而8051, 严格地说,不存在。”??

      别人集成到芯片内部去了,别你看不见,就说不存在!?


//

使用特权

评论回复
64
刘前辈|  楼主 | 2011-11-4 13:11 | 只看该作者
本帖最后由 刘前辈 于 2011-11-4 21:29 编辑

建议所长以后不要在小辈面前卖弄英文啦。自己没看懂,理解错了,还自以为得计。最终砸了自己的脚。露怯呀。

HOT大叔从不卖弄自己不懂的东西,所以能获得别人的尊重。

顶61楼 HOT大叔

实际称呼不是重要的,在于实际应用。

.

实际称呼和操作方式不是重要的,其内部机制都一样。都是矢量中断。


、、

使用特权

评论回复
65
q331513266| | 2011-11-4 13:56 | 只看该作者
拿把锤子,砸开CPU,拿出来溜溜,大伙都知道了:lol

使用特权

评论回复
66
刘前辈|  楼主 | 2011-11-4 14:47 | 只看该作者
哈,不用砸开,看看8051说明书就行了。

下面是网上搜索到的内容:——highgear 说搜不到?我搜到的看不过来,随便下了一条:

什么叫矢量中断?请叙述中断类型号、中断向量表和中断服务程序入口地址三者的关系?
矢量中断:其实就是 处理器产生中断时,会在某个寄存器里面产生对应中断的数0,1,2,3 这种中断类型号(中断标识码)。
如果处理器支持开启矢量中断功能。那么会直接跳转到中断向量表数组基址+中断类型号索引处获得ISR入口地址进行执行。
如果不支持矢量中断,那么大家一起进入某一个中断。然后在程序里面判断哪个中断源产生了中断,,然后根据查询值执行对应的中断服务程序。

所以中断类型号0,1,2,3……,就是中断向量表(数组)的索引值——即下标值。

中断向量表,当然就是用来存放中断处理程序ISR入口地址(中断向量)的一个表格(数组)。

中断服务程序ISR入口地址:中断产生的时候。程序会自动跳到该位置执行的地址。

一般来说,中断入口地址可能只有几个,
但是中断类型还有好多。
那么只好 很多中断类型 进入一个中断入口地址中。
这个时候就需要在中断入口的地址那边查询判断是哪个中断,然后处理
因为这样要判断是什么中断,不能达到中断快速的目的;
所以有了矢量中断和中断向量表。

矢量中断的目的是:中断时候自动产生偏移量(也就是中断类型号=中断向量表的索引值);
使处理自动跳转到  中断向量表基址+(索引)偏移量元素内的(指针内容)地址,这样就不需要判断是什么中断。加速了中断的进入。

哈哈,如今所有的单片机都是这种矢量中断机制吧;否则,太落后没人要了。


//

使用特权

评论回复
67
highgear| | 2011-11-4 22:25 | 只看该作者
回复模板:

我早说过刘钱贝不懂技术, 你们这些聪明人怎么想去试图说服一个连一幅画都要请人挂,还美其名曰站在巨人肩膀上的白痴呢?
          ;P ;P ;P ;P

使用特权

评论回复
68
DownCloud| | 2011-11-5 12:41 | 只看该作者
啊哈哈哈

使用特权

评论回复
69
天凉好个秋| | 2011-11-5 18:07 | 只看该作者
刘先生真的有点糊涂,

8086的中断,跳转的时候,那个地方代码里和8051是完全不一样的。

8051,中断进入的那个地址,那里有个代码可能叫 LJMP XXXX,或者是push PSW,

但8086的中断,是完全找不到这个代码,

比如对于 int 8 ,有个中断向量,在 8* 4那个地址里,那里只有一个地址,没有运行代码,而那个地址的四个字节指向一个能运行的代码,所以,被称为中断向量。

使用特权

评论回复
70
xxkkmm| | 2011-11-5 23:39 | 只看该作者
其实很简单:
中断产生时对于51:PC跳转到某个固定的地址去执行指令(如复位则跳转到0x0000去执行此处的指令),中断的入口地址放的是指令
对于x86:中断向量表存放的不是指令,是中断服务程序的入口地址,CPU需要将该地址加载到程序指针,然后CPU去执行该地址所指的中断服务程序。

使用特权

评论回复
71
刘前辈|  楼主 | 2011-11-6 20:33 | 只看该作者
顶71楼。很简单的问题:矢量中断是指由芯片硬件自动产生中断矢量的一种机制,它由于不需要软件查询,而加速了中断响应时间。当今所有的单片微型计算机都是矢量中断机制,非中断矢量机制早就成为历史了。现在无论8051,AVR,ARM,内部都自动产生中断向量——ISR入口地址;都比X86响应时间快得多,X86还要经过N次访问外部数据总线间接寻址才能软件获得ISR入口地址。软件不属于矢量中断机制的内容!否则,岂不等于说“除了X86,所有其他处理器都不是矢量中断。”
    哈,当今有没有比矢量中断更有效的机制,老刘寡闻。但是各种芯片都是互相学习的,没有谁比谁技术差的。——再在强调一遍:

     矢量中断是硬件机制!别拿软件功能说事。

使用特权

评论回复
72
刘前辈|  楼主 | 2011-11-6 20:34 | 只看该作者

还是70楼清醒,可能是格丽斯潘糊涂了吧。

本帖最后由 刘前辈 于 2011-11-6 21:03 编辑
  #70楼 天凉好个秋
         刘先生真的有点糊涂,…………


  还是“天凉好个秋”聪明,看来如今好多大学教材都写错了。这些教授都是草包。

        哈……不是刘前辈糊涂,可能是格丽斯潘糊涂了吧。还是咱们中国人聪明。——仔细参考47楼 格丽斯潘3个作者写的是什么。这本教材当今正在忽悠千万中国大学生学习8051。咱们是不是应该投诉鬼佬一把?他们讲错了!应该按照咱们 中国“从不看书,照样登堂入室”的 highgear——那个吐着舌头,拖着哈拉子的典型脑瘫形象患者 去讲——“只有X86才是矢量中断……”

        ——如果说8051带有中断向量表都不是矢量中断机制的话,它的中断向量表里放的是什么? 它是什么机制?软件查询机制?——Intel 看来比所长的衰儿子智力 强不到哪去?



、、

使用特权

评论回复
73
刘前辈|  楼主 | 2011-11-6 21:27 | 只看该作者
贴一下教材上的错误:51不是矢量中断。










、、

使用特权

评论回复
74
刘前辈|  楼主 | 2011-11-6 21:54 | 只看该作者
哈……前面早就说过:8051 的中断向量表从0000H开始,到n*8+3结束。n 称为中断类型码,和X86一样,可以达到255级中断。所以,8051的中断向量表是最长的。

至今为止,传统51中断是5个,所以中断向量表长度是23H。如果你用C51编程,可以看到汇编码的紧凑。——正好从中断向量表尾部开始main: 。如果你用汇编写程序,LJMP XXXX 什么地方,现在终于懂了吧。——跳到中断向量表中激活的最后一个向量的尾部!

现在大学里学习51的学弟可真是比咱幸运多了,我们学的是孙涵芳那本。根本没有这些概念。
——看国外8051教材真是一种享受!

谁要这本教材电子版(已经绝版了;纸质书买不到了。)我发给他。贴这不好,——侵权。


、、

使用特权

评论回复
75
刘前辈|  楼主 | 2011-11-6 22:26 | 只看该作者
本帖最后由 刘前辈 于 2011-11-6 22:27 编辑

highgear 所长年纪大了,不容易改变观念:8051的5个中断向量是芯片内部硬件电路产生的!一个连数字逻辑电路都没学过的人,一个连布尔代数逻辑方程式都不会写的人,当然不会懂得这些芯片设计技术。

     是不是有必要拿大锤子砸开芯片给你看看?还是那句话:

       别你看不见,就说它不存在。

    单片机=单片微型计算机

别人的中断矢量自动产生电路集成到芯片内部去啦!总线也集成到芯片内部去啦。和X86一样……你看不见而已。

建议先学好《布尔逻辑代数》再来吧。54岁连布尔代数的发展历史都不知道,那是芯片设计的技术基础。以前总该知道“童诗白”的数字电路设计教材吧?学软件的就算了。

连编码理论都没学过,还叫嚷着和HOT大叔讨论CRC?最后让人损了一把,尴尬。

所以,“任何人都是有所不知的”  不知道的事就说不懂,没什么呀,54岁不服气?还和谁PK ?和你自己还可以。


、、

使用特权

评论回复
76
hzphb| | 2011-11-7 23:37 | 只看该作者
我也插个图来:


另:刘前辈,给你站内短信啦、注意查收哦、

使用特权

评论回复
77
刘前辈|  楼主 | 2011-11-8 18:42 | 只看该作者
78楼好贴。书已经发出了。请查收。

使用特权

评论回复
78
刘前辈|  楼主 | 2011-11-8 19:07 | 只看该作者
本帖最后由 刘前辈 于 2011-11-8 19:09 编辑

77楼为你爹当年无端受1952小辈羞辱真是不予余力。——谁让你爹不懂装懂?

         咱会算CRC是高中使得本事了。相信这论坛上所有人都用笔算过二进制除法。——哈哈,除了highger 这个没上过高中,考不上大学的低智商脑瘫幼儿,拖累所长一辈子。也只能帮所长打打杀杀瞎喊一气。

            看看老刘怎么玩CRC的,气死你啦。

           过2天再让你见识一下老刘怎么玩PROTEUS 的。 哇!没什么好说什么啦,OS玩不过(只会个调度器在这卖?),CRC玩不过,PROTEUS也玩不过,(边都不沾)还欠着1952 1,000元赌债。

          年近60,不服也没用。 如今,1、ID玩没了;2、再也不敢和谁PK了;3、连英文也不敢再秀了。4、PROTEUS也不会;还想着从头学;5、……

          还玩什么呀?处处不如人,只好骂娘啦,连你爹的儒雅也不顾了。 ——都是自找的。还是心态平和一点,对学生尊重一点,“任何人都有所不知”,比个什么劲。越比越差劲啦。






、、

使用特权

评论回复
79
Periodic| | 2012-2-25 14:16 | 只看该作者
MARK

使用特权

评论回复
80
huangqi412| | 2012-2-25 20:08 | 只看该作者
。。。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则