我正在做一些家庭作业,我不明白这个movl在做什么(我认为这是一个for循环或什么,但我真的不明白)
请帮帮忙
0x0000555555555238 <+46>: mov $0x0,%eax
0x000055555555523d <+51>: jmp 0x55555555524c <clave0+66>
0x000055555555523f <+53>: movslq %eax,%rdx
=> 0x0000555555555242 <+56>: movl $0x0,(%rsp,%rdx,4)
0x0000555555555249 <+63>: add $0x1,%eax
0x000055555555524c <+66>: cmp $0xff,%eax
0x0000555555555251 <+71>: jle 0x55555555523f <clave0+53>
0x0000555555555253 <+73>: mov $0x0,%eax
我试着在谷歌上搜索,但似乎没有相同的格式,所以我不知道到底是什么做。我只知道这是移动一个int。
1条答案
按热度按时间jmo0nnb31#
此movl指令将4个字节0x00写入逻辑地址:RSP+RDX*4.
等效的Intel语法为:
mov双字节指针[rsp+rdx*4],0x00