Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/assembly/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Assembly 英特尔x86中的REP stosl与什么等效_Assembly_X86 - Fatal编程技术网

Assembly 英特尔x86中的REP stosl与什么等效

Assembly 英特尔x86中的REP stosl与什么等效,assembly,x86,Assembly,X86,我正在尝试运行一条从GAS样式中获取的指令,但当我将此指令移植到intel样式时,我得到如下错误: "error: parser: instruction expected" 我尝试了各种组合,比如REP movsl、REP loadsl,但都给出了相同的问题, 有人能说出这个与x86中的REP stosl相当的正确命令吗?我相信是的 rep stosd 用于重复存储字符串DWORD(32位) 您可以在“英特尔指令集参考”中找到stos_uu指令。它们使用后缀b表示1字节,w表示2字节,d表

我正在尝试运行一条从GAS样式中获取的指令,但当我将此指令移植到intel样式时,我得到如下错误:

"error: parser: instruction expected"
我尝试了各种组合,比如REP movsl、REP loadsl,但都给出了相同的问题, 有人能说出这个与x86中的REP stosl相当的正确命令吗?我相信是的

rep stosd
用于重复存储字符串DWORD(32位)


您可以在“英特尔指令集参考”中找到stos_uu指令。它们使用后缀b表示1字节,w表示2字节,d表示4字节字符串操作

rep只是一个前缀,表示以下指令必须重复(E)CX次。不过,这仅对有限的指令集有效。实际指令是您案例中的
stos
,它需要一个类型操作数
b
表示字节,
w
表示单词,
d
表示双字操作数大小


在您的情况下,
d
应该是正确的操作数大小。

谢谢@Devolus您的回答,将stosl更改为stosw对我来说效果很好。@amitsightomar:正确的替换是
stosd
,而不是
stosw
@IgorSkochinsky,这也是我所期望的。