小编Cat*_*ile的帖子

汇编语言:宏与过程

我是汇编语言的新手,我想到了这个问题:哪个是构建我的代码、宏或过程的更好的解决方案?虽然包含在宏中的代码只是被复制到所需的部分,并且允许在没有代价高昂的跳转的情况下执行代码,但它确实添加了必须在程序执行时加载的额外指令。此外,在过程中,虽然它减少了需要加载到内存中的代码,但它也增加了昂贵的跳转,从一段代码到另一段代码。哪一个更好?宏还是程序?

macros assembly procedures

6
推荐指数
1
解决办法
8977
查看次数

xmm 指令 - 内存源操作数的分段错误

我正在尝试使用 XMM 寄存器使用 SSE2 指令在汇编语言中将 4 个数字添加到其他 4 个数字中。我确实成功了,但我遇到了一些我不明白的事情。如果我以这种方式添加:

movdqu xmm0, oword [var1]
movdqu xmm1, oword [var2]
paddd xmm0, xmm1
movdqu oword [var1], xmm0 
Run Code Online (Sandbox Code Playgroud)

它工作得很好。

但如果我这样尝试:

movdqu xmm0, oword [var1]
paddd xmm0, oword [var2]
movdqu oword [var1], xmm0 
Run Code Online (Sandbox Code Playgroud)

它给了我一个分段错误。

第二种方法有什么问题?我正在使用 Nasm、Intel Atom N270、Linux Mint 12 32 位

x86 assembly sse simd memory-alignment

2
推荐指数
1
解决办法
933
查看次数

标签 统计

assembly ×2

macros ×1

memory-alignment ×1

procedures ×1

simd ×1

sse ×1

x86 ×1