是什么0x4
从以下装配线是什么意思?
cmp 0x4(%esi),%ebx
je ...
当这种比较收益相等,则执行该跳中,寄存器中的值: %esi
0xe944d6d0
%ebx
0xe94ceccc
对不起,问这么简单的问题,但我有一个困难时期与谷歌搜索等paranthesis符号。 在时间压力下花了超过一半,而一个小时。
是什么0x4
从以下装配线是什么意思?
cmp 0x4(%esi),%ebx
je ...
当这种比较收益相等,则执行该跳中,寄存器中的值: %esi
0xe944d6d0
%ebx
0xe94ceccc
对不起,问这么简单的问题,但我有一个困难时期与谷歌搜索等paranthesis符号。 在时间压力下花了超过一半,而一个小时。
这是AT&T的语法,在Intel语句这将是:
cmp ebx,[esi+4]
需要注意的是操作数的顺序是相反的。
在Intel语句是DEST,SRC。 在AT&T它的SRC,DEST。
所以基本上是指令比较ebx
与存储在DWORD值[esi+4]
减去存储在DWORD值[esi+4]
从ebx
,就像sub
会做,但cmp
只更新标志,它不保存任何地方的结果。