我目前正在学习汇编语言考试,并在过去的论文中遇到过这个问题,
在汇编中,专门指令是什么意思?举一个例子。CPU 设计人员如何决定要专门研究哪条指令?
它让我难过,我的讲师笔记也无济于事。
我们使用的模拟器是 8 位的,类似于 x86 系列。
我目前正在学习汇编语言考试,并在过去的论文中遇到过这个问题,
在汇编中,专门指令是什么意思?举一个例子。CPU 设计人员如何决定要专门研究哪条指令?
它让我难过,我的讲师笔记也无济于事。
我们使用的模拟器是 8 位的,类似于 x86 系列。
有趣的。我以前没有听说过,谷歌也没有显示任何内容(这个页面出现在第 3 位)。但是通过推理我们可以找出讲师的意思:为了使某些教学专业化,它只需要完成一项任务即可。
所以这可能意味着这MOV
是一个“通用”指令,它可以根据操作数执行许多不同的操作。但另一方面NOP
或HALT
指令只做一件事,没有别的。当然,这单一的东西可以用来执行许多不同的任务。例如 NOP 可用于延迟或仅用作占位符。但是NOP最终只做了一件事。
同样INT 3
,虽然看起来像INT
带参数的指令3
实际上是单个操作码,0xCC
. 那是因为INT 3
用于断点,因此必须具有适合单个操作码的能力。这就是为什么它是专门的。
我认为“xlat”(来自 Intel x86)是相当专业的。特别是做一些没有太多需求的事情。
我猜这里的“专业化”是指:为执行相当复杂的事情而量身定制的指令,这些指令通常由一组更简单的更像 RISC 的指令块完成,但需求量很大(或者如果 CPU 设计人员认为它会有用或者他可以在硬件或微代码流中做得更好)- ISA 中添加了一条特殊指令(或类似指令系列)。从这个意义上说,一个很好的例子是 AES ISA,例如 - http://en.wikipedia.org/wiki/AES_instruction_set