linux - 在 ubuntu 上运行汇编代码

标签 linux assembly ubuntu nasm

我正在尝试运行的代码如下。 我使用 nasm util 将其转换为目标文件。当我尝试执行时,它说“无法执行二进制文件”。

我运行命令: nasm -f elf -o helloworld.o helloworld.asm

segment .data
msg  db   "Hello, world!",10
len  equ  $ - msg

segment .text
global _start

_start:
   mov  eax,4
   mov  ebx,1
   mov  ecx,msg
   mov  edx,len
   int  80h

   mov  eax,1
   mov  ebx,0
   int  80h

这是我在汇编中的第一个程序,除了编译一些我没有使用 ubuntu
基本的 C 程序。我需要一些帮助谢谢大家。

最佳答案

它非常适合我你的代码。

您是否链接了最终目标文件?

试试这个:ld helloworld.o -o helloworld

关于linux - 在 ubuntu 上运行汇编代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3909848/

相关文章:

linux - 无法使管道运算符正常运行 - Linux

c# - 在 Ubuntu 环境中使用 MonoDevelop 将 C# 代码交叉编译为 Colibri iMX6 (Linux) exe

assembly - 如何在汇编器 x86 函数调用中传递参数?

assembly - 什么决定了内存重映射操作后的位置无关性?

c - ICC 是否满足复数乘法的 C99 规范?

ubuntu - 警告 : REMOTE HOST IDENTIFICATION HAS CHANGED

linux - 总结数学系列。狂欢

linux - Gstreamer,如何将输出路由到文件而不是帧缓冲区

ubuntu - 为什么我的 apache2 设置总是导致 301 Moved Permanently

python-3.x - 如何在python中检查蓝牙设备的ping