8、X86-64核心编程:数组与指令运用

X86-64核心编程:数组与指令运用

1. 测试用例与指令特性

首先来看一些测试用例:

----- Test case #6 -----
n = 100
sum1 = 25502500
sum2 = 25502500
----- Test case #7 -----
n = -42
sum1 = error: 'n' is out of range
sum2 = error: 'n' is out of range

x86 - 64指令集包含 inc (加1)和 dec (减1)指令,它们用于对指定操作数进行加1或减1操作。这两条指令的机器编码比立即值为1的 add sub 指令小一个字节。不过,使用 inc dec 存在缺点,它们不会更新RFLAGS.CF标志,这使得它们不能用于需要该标志的代码。同时, inc dec 会根据结果更新RFLAGS.OF、RFLAGS.SF、RFLAGS.ZF、RFLAGS.AF和RFLAGS.PF,而 add sub 指令会更新这些标志以及RFLAGS.CF。在某些处理器微架构中, inc dec 对RFLAGS状态标志的部分更新速度较慢。而且,如果在引用或更新RFLAGS.CF的其他指

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值