linux - nasm 相当于设置指令

标签 linux assembly nasm

有谁知道 nasm 是否与我习惯使用的“设置”指令等效,所以根据 cmp 的结果在 eax 中设置位,但 nasm 似乎不认识它只是想知道是否有一个替代使用 xor 和移位来计算 cmp 的结果。我正在尝试执行以下操作

cmp eax,ecx
setl al
movzbl al,eax

提前致谢

最佳答案

从 2012 年 3 月 12 日开始,这与 NASM 2.10 组装得很好:

; file: set.asm
bits 16

cmp ecx, eax
setl al
movzx eax, al

我将其组装为 nasm -f bin set.asm

编辑:我在所有地方都颠倒了操作数的顺序,因为看起来您在编写代码时考虑到了 AT&T 语法(不适用于 NASM),其中操作数的顺序相反.

关于linux - nasm 相当于设置指令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13001832/

相关文章:

linux - 如何将 bash 变量放在引号中

gcc - 为什么 gcc 在创建汇编代码时会这样做?

gcc - 如何在 NASM 中导出符号

您可以使用 NASM 向 Linux 终端发送 bash 命令吗

assembly - Windows : "undefined reference to ` print_string'"中的 NASM 汇编程序错误

linux - 如何在另一个Linux系统上部署.so浏览器插件

linux - 以编程方式获取接口(interface)的驱动程序名称

linux - 当 bash 中的命令之间使用 & 符号时重定向 stdout 和 stderr

file - 什么是文件句柄以及它对程序员有用的地方?

c++ - x64 asm如何设置指向_cdecl C函数的函数指针并调用它?