selph
selph
发布于 2022-01-07 / 341 阅读
0
0

《xchg rax,rax》片段分析0x06--连续取反加一

前言

本次是该系列的的第0x06篇,本篇内容过于简单,故内容较短


实验环境:

  • Windows10 + VS2022 + masm

0x06

代码片段链接:xorpd | xchg rax,rax 0x06

not      rax
inc      rax
neg      rax

代码分析

代码实际上什么也没做,本节片段展示了neg指令的原理,就是取反加一,连续取反加一两次会变成原来的数

测试代码:

.code
main proc
    lea rax, [1]


	not      rax	; 取反
	inc      rax	; +1
	neg      rax	; 取反+1

	ret
main ENDP
END

评论