'vector' 在 asm 上下文中的含义

Meaning of 'vector' in asm context

例如:

int [=11=]x80

我了解到它正在对目标操作数值 0x80128 执行 int 指令。而且,如果我理解正确的话,128 是一个系统调用,它将执行存储在 eax 中的调用。但是,这里的vector是什么意思呢?

The destination operand specifies a vector from 0 to 255, encoded as an 8-bit unsigned intermediate value.

为什么不直接用 number 这个词呢? vector 在这里有特定的含义吗(我想它与 C++ 或数学中的含义不同)。

在这种类型的低级软件上下文中,术语向量是地址列表、向量。通常基于 interrupts/exceptions。所以中断 5 的处理程序是第 5 个(好吧,第 6 个有时中断以 0 或 1 开头(通常不特定于 x86))。

所以 int 0x80 本身不是向量,但是有一个向量 table 和偏移量 0x80,其中 table 是该中断处理程序的地址。这允许固定大小的项目易于查找 table,但处理程序的大小可能会有所不同。

将此中断称为 128 并没有错,但处理程序是基于矢量 table。这是地址的另一个词。