矢量化(vectored)和非矢量化中断(non-vectored interrupts)的区别

向量中断是CPU实际上提前知道中断服务例程地址的地方。它只需要中断设备通过数据总线和I/O接口向CPU发送其唯一向量。CPU获取该向量,检查内存中的中断表,然后为该设备执行正确的ISR。因此,vectoredinterrupt允许CPU能够知道要在软件(内存)中执行的ISR。...

矢量干扰

  • 使用向量化中断的设备被分配一个中断向量。这是一个标识特定中断处理程序的数字。此中断的ISR地址是固定的,CPU已知。
  • 当设备中断时,CPU分支到特定的ISR。
  • 微处理器跳转到特定的维修例行程序。
  • 当微处理器执行call指令时,它会在堆栈上保存下一条指令的地址。
  • 在服务例程结束时,RET指令将执行返回到程序中断的位置。
  • 所有8051中断都是矢量化中断。

非矢量中断

  • 非矢量化中断是一种具有公共ISR的中断,该ISR对于系统中的所有非矢量化中断都是公共的。CPU已知此公共ISR的地址。
  • 没有固定内存位置用于从正常执行转移控制的中断。
  • 内存地址随中断一起发送。
  • 如果不轮询循环中的每个I/O接口,CPU根本不知道是哪个设备导致了中断。
  • 一旦中断发生,系统必须确定实际中断的所有相关设备中的哪个设备。

区别

向量中断是CPU实际上提前知道中断服务例程地址的地方。它只需要中断设备通过数据总线和I/O接口向CPU发送其唯一向量。CPU获取该向量,检查内存中的中断表,然后为该设备执行正确的ISR。因此,vectoredinterrupt允许CPU能够知道要在软件(内存)中执行的ISR。

非矢量化中断是指中断设备从不发送中断矢量。CPU接收到一个中断,它将程序计数器跳转到硬件中的固定地址。这通常是一个硬编码的ISR,它与设备无关。如果不轮询循环中的每个O/I接口并检查每个I/O接口的状态寄存器以找到状态为“interrupt created”(中断已创建)的接口,CPU根本不知道是哪个设备导致了中断。

Also Read: Difference Between Software And Hardware Interrupts

  • 发表于 2021-11-26 14:33
  • 阅读 ( 127 )
  • 分类:IT

你可能感兴趣的文章

数组表(arraylist)和矢量(vector)的区别

ArrayList与Vector 向量实现的数组可以在运行时在添加或删除某些元素时进行增长/收缩。使用整数索引访问其元素。两个字段–容量和容量增量,是矢量存储管理的特征。它实现了四个接口:*列表*随机访问*可克隆*可串行化接口 ...

  • 发布于 2021-06-23 18:41
  • 阅读 ( 245 )

矢量(vector)和位图(bitmap)的区别

...量和位图。他们之间的主要区别在于他们如何绘制图像。Vector使用数学方程来形成像圆、线和曲线这样的基本形状,然后将这些形状组合起来形成所需的图像。另一方面,位图基本上是一个由不同颜色混合在一起的网格,从而使...

  • 发布于 2021-06-23 19:49
  • 阅读 ( 318 )

矢量量(vector quantity)和标量(scalar quantity)的区别

矢量量与标量 众所周知的事实是,你在物理学中必然会遇到的大多数物理量分为两类。它们不是矢量量就是标量。为了了解标量是什么,最好列出一些例子。时间、速度、温度和体积只是标量的一些例子。 当你考虑定义时间...

  • 发布于 2021-06-23 20:32
  • 阅读 ( 677 )

矢量(vector)和列表(list)的区别

...择一个向量。数组中的元素数可能会有很大的变化xample:vector V;V.insert(V.begin(),3);断言(V.size()==1&amp&V.容量()>=1和&V[0]==3); ListsList是支持向前和向后遍历的“双链接序列”。开始、结束和中...

  • 发布于 2021-06-23 23:28
  • 阅读 ( 334 )

位图(bitmap)和矢量(vector)的区别

...文件。因此,可以快速下载压缩位图图像。 什么是矢量(vector)? 矢量图形使用基本的几何形状,如直线、点、曲线、多边形等。数学公式或表达式有助于构建这些形状。在矢量图形中,可以在不降低图像质量的情况下编辑图像...

  • 发布于 2021-07-01 07:56
  • 阅读 ( 714 )

数组表(arraylist)和矢量(vector)的区别

ArrayList和Vector的主要区别在于ArrayList是非同步的,它允许多个线程同时在一个ArrayList上工作,而Vector是同步的,并且避免了多个线程同时在一个Vector上工作。 Java等编程语言支持集合,允许将多个对象存储为单个单元。两个这样...

  • 发布于 2021-07-01 09:19
  • 阅读 ( 228 )

光栅(raster)和矢量数据(vector data)的区别

...件或算法,投影变换可能会耗费时间。 什么是矢量数据(vector data)? 矢量数据使用连续的点或顶点来表示数据。每个顶点包含x坐标和y坐标。行政边界、线性特征、道路和河流是矢量数据的一些示例。此外,矢量数据使用直线、...

  • 发布于 2021-07-01 13:59
  • 阅读 ( 1118 )

蒙面的(maskable)和非屏蔽中断(non maskable interrupt)的区别

...,可屏蔽中断,不可屏蔽中断 什么是可屏蔽中断(maskable interrupt)? 可屏蔽中断是处理器可以拒绝的中断。因此,这些中断有助于管理低优先级任务。此外,8085的RST6.5、RST7.5和RST5.5是可屏蔽中断的一些常见示例。 什么是非屏蔽...

  • 发布于 2021-07-01 22:17
  • 阅读 ( 865 )

磷铁矿(fomite)和矢量(vector)的区别

...、特征、类型2。什么是矢量-定义、特征、类型3。Fomite和Vector之间有什么相似之处——共同特征概述4。Fomite和Vector的区别是什么?关键区别的比较 关键术语 生物传播,疾病传播,寄生虫,间接接触传播,机械传播,媒介 什么...

  • 发布于 2021-07-01 23:56
  • 阅读 ( 237 )

标量(scalar)和矢量(vector)的区别

...和矢量在物理学和数学中都有应用。标量(scalar) vs. 矢量(vector)当我们处理物理时,有不同类型的测量工具。标量和矢量是这些测量工具之一。标量或标量是那些只有量级的量。现在要理解这个标量,首先,你必须理解量值这个术...

  • 发布于 2021-07-07 11:45
  • 阅读 ( 732 )
lnllpdjai
lnllpdjai

0 篇文章

相关推荐