Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
0x4下面的流水线是什么意思?
0x4
cmp 0x4(%esi),%ebx je ...
当此比较返回相等并执行跳转时,寄存器具有以下值: %esi 0xe944d6d0 %ebx 0xe94ceccc
%esi
0xe944d6d0
%ebx
0xe94ceccc
很抱歉问了这么简单的问题,但我很难用谷歌搜索这样的括号符号。在时间压力下花了半个多小时。
那是 AT&T 语法,在 Intel 语法中它是:
cmp ebx,[esi+4]
请注意,操作数的顺序是相反的。
在 Intel 语法中,它是 dest,src。在 AT&T 中,它是 src,dest。
因此,基本上该指令通过减去存储在from中的 dword 值ebx与存储在其中的 dword 值进行比较,就像会做的那样,但只更新标志,它不会将结果存储在任何地方。[esi+4][esi+4]ebxsubcmp
ebx
[esi+4]
sub
cmp