为什么x86上没有零寄存器指令

问题描述 投票:0回答:1

为什么x86指令集没有专门的寄存器清零指令? 开发人员必须使用像

xor reg, reg
这样的惯用语来执行此类功能。

assembly x86
1个回答
0
投票

从历史上看,CPU 架构一直是简约的。 CPU 提供的每一个功能几乎从来都不是为了程序员的方便,而是为了实现原本不可能实现的目标,或者为了实现更好的性能。

x86/x54 的

xor reg, reg
习惯满足了这种简约的需求:它确实完成了工作,并且其性能无法提高。

“开发人员必须使用 xor reg、reg 等习惯用法来执行此类功能”这一事实并不重要:您在 Assembly 中使用的每一条指令都是一个习惯用法。给予或拿走一个(或几个,甚至多个)没有任何区别。

© www.soinside.com 2019 - 2024. All rights reserved.