jump table
英 /dʒʌmp ˈteɪbəl/美 /dʒʌmp ˈteɪbəl/
n. 名词短语
跳转表;分支表;跳跃表
用法示例
- The compiler uses a jump table to implement the switch statement efficiently.编译器使用跳转表来高效实现 switch 语句。
- In assembly language, a jump table can be created with an array of addresses.在汇编语言中,可以用地址数组创建跳转表。
- The virtual machine dispatches method calls via a jump table.虚拟机通过跳转表分派方法调用。
- Using a jump table can reduce the overhead of multiple conditional branches.使用跳转表可以减少多个条件分支的开销。
- The jump table is indexed by the opcode to select the corresponding handler.跳转表由操作码索引,以选择相应的处理程序。
含义详解
jump table 的核心含义是计算机科学中的一种数据结构,通常是一个数组或列表,其中每个元素存储一个地址或指令,用于根据输入值(如索引或键)直接跳转到对应的代码位置。这一本义源于“jump”(跳转)和“table”(表格)的组合,形象地表示“通过表格进行跳转”。引申义包括:1)在编译器和解释器中,用于实现 switch 语句或虚函数调用;2)在算法中,用于实现动态规划或状态机;3)在汇编语言中,用于实现多路分支。各义项均围绕“通过表格实现快速跳转”这一核心逻辑,从具体的程序控制流扩展到抽象的计算模型。
词源解析
jump 源自中古英语 jumpen,可能来自斯堪的纳维亚语,意为“跳跃”;table 源自拉丁语 tabula,意为“板、表格”。两者组合成复合名词 jump table,构词逻辑为“用于跳转的表格”。记忆时可联想:程序执行时像“跳”到表格中指定的位置。该术语在计算机领域广泛使用,但并非日常英语词汇。
适用语境
jump table 主要出现在计算机科学和软件工程领域。在学术论文中,它指代一种优化技术;在技术文档中,描述编译器或虚拟机的实现细节;在编程书籍中,解释 switch 语句的底层机制。在商务邮件或日常口语中极少使用,除非讨论编程。在新闻报道中,可能出现在科技新闻中,但通常会被解释。法律文本中几乎不出现。文学作品中罕见。语气中性,技术性强。
用法须知
jump table 是可数名词短语,复数形式为 jump tables。通常用作主语或宾语,例如“The compiler generates a jump table.”。易错点:不能用作动词;不能拆开使用;在编程语境中,常与动词 generate、use、create 等搭配。注意与“jump instruction”(跳转指令)区分,后者是指令而非表格。
相似词辨析
与 jump table 相近的词有 branch table、dispatch table、lookup table。branch table 更强调分支选择,常用于汇编;dispatch table 强调动态分派,多见于面向对象编程;lookup table 强调查找,不一定是跳转。jump table 特指存储跳转地址的表格。在需要强调控制流转移时用 jump table;强调数据查找时用 lookup table。
常见误区
jump table 是技术术语,语域较高,仅用于计算机专业语境。褒贬色彩中性。常见误用:在非技术语境中误用;与“jump list”混淆(后者是 Windows 任务栏功能)。注意拼写为两个单词,不是 jumptable。
常见搭配
- generate a jump table
- use a jump table
- jump table entry
- jump table index
- implement a jump table
- jump table dispatch
- jump table optimization