linux汇编helloworld怎么写?linux汇编语言入门教程

在 Linux 下使用汇编语言编写 “Hello, World!” 程序,通常使用 x86_64 架构(64位)或 x86 架构(32位),下面我将分别给出两种架构的代码示例,并说明如何编译和运行。


✅ 一、x86_64 架构(64位 Linux)

📄 汇编代码:hello64.asm

section .data
    msg db "Hello, World!", 10    ; 字符串 + 换行符
section .text
    global _start
_start:
    ; 系统调用:sys_write (1)
    mov rax, 1                    ; 系统调用号:sys_write
    mov rdi, 1                    ; 文件描述符:stdout
    lea rsi, [msg]                ; 缓冲区地址
    mov rdx, 13                   ; 写入字节数
    syscall                       ; 触发系统调用
    ; 系统调用:sys_exit (60)
    mov rax, 60                   ; 系统调用号:sys_exit
    xor rdi, rdi                  ; 退出码:0
    syscall                       ; 触发系统调用

linux汇编helloworld怎么写?linux汇编语言入门教程

汇编语言(基于Linux)
加载中
汇编语言(基于Linux)

🔧 编译与运行

# 使用 nasm 汇编
nasm -f elf64 hello64.asm -o hello64.o
# 链接生成可执行文件
ld hello64.o -o hello64
# 运行
./hello64

✅ 二、x86 架构(32位 Linux)

📄 汇编代码:hello32.asm

section .data
    msg db "Hello, World!", 10    ; 字符串 + 换行符
section .text
    global _start
_start:
    ; 系统调用:sys_write (4)
    mov eax, 4                    ; 系统调用号:sys_write
    mov ebx, 1                    ; 文件描述符:stdout
    mov ecx, msg                  ; 缓冲区地址
    mov edx, 13                   ; 写入字节数
    int 0x80                      ; 触发系统调用
    ; 系统调用:sys_exit (1)
    mov eax, 1                    ; 系统调用号:sys_exit
    xor ebx, ebx                  ; 退出码:0
    int 0x80                      ; 触发系统调用

linux汇编helloworld怎么写?linux汇编语言入门教程

🔧 编译与运行

# 使用 nasm 汇编
nasm -f elf32 hello32.asm -o hello32.o
# 链接生成可执行文件
ld hello32.o -o hello32
# 运行
./hello32

📌 说明

项目 x86_64 x86
系统调用接口 syscall int 0x80
系统调用号寄存器 rax eax
参数寄存器

linux汇编helloworld怎么写?linux汇编语言入门教程

rdi, rsi, rdx

ebx, ecx, edx
系统调用号sys_write=1, sys_exit=60sys_write=4, sys_exit=1

🛠 安装必要工具

如果你还没有安装 nasm 和 ld,可以使用以下命令安装:

# Debian/Ubuntu
sudo apt install nasm binutils
# CentOS/RHEL
sudo yum install nasm binutils

✅ 输出结果

无论使用哪种架构,运行后都会输出:

Hello, World!

如需进一步学习,可以探索:

  • 如何读取用户输入
  • 如何创建文件
  • 如何使用 C 库函数(如 printf)

欢迎继续提问!

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://test.idctop.com/article/483349.html

赞 (0)
上一篇 2026年7月11日 21:14
服务器主机进程很多怎么办?服务器进程多占用内存怎么解决
下一篇 2026年7月11日 21:16

相关推荐

  • M247服务器哪个机房快?全球36个数据中心测试IP汇总

    M247凭借遍布全球36个数据中心的庞大网络,为需要低延迟、高稳定性及灵活部署的企业级用户提供了极具竞争力的主机解决方案,其核心优势在于跨洲际的负载均衡能力与透明的带宽资源分配,在云计算与边缘计算日益普及的今天,选择一家拥有全球基础设施的主机商不再仅仅是为了“有一台服务器”,而是为了构建一个无国界的数字业务底座……

    2026年6月26日
    2100
  • 8核16G服务器能容纳多少人呢,能支持多少用户同时在线?

    8c16g服务器能容纳多少人?核心答案:没有固定数字,取决于业务类型、架构设计和带宽配置,纯静态页面可支撑数千人同时在线,而高并发动态应用可能几十人就能把资源耗尽,8c16g服务器的真实性能画像8核CPU加16GB内存的组合,在云服务器市场中属于中端偏上的配置,放到2026年的技术背景下,一枚主流云厂商的8核处……

    2026年8月10日
    1000
  • 开学季TmhHost服务器7折是真的吗?洛杉矶三网GIA高防服务器怎么选

    2026年开学季,TmhHost针对洛杉矶三网GIA、200G高防、G口及香港BGP线路全线7折,是构建高性能、低延迟海外业务架构的最佳时机,随着新学期开始,大量高校学生、初创团队及独立开发者涌入服务器市场,面对琳琅满目的机房选项,如何在预算有限的情况下获得最稳定的网络体验,成为大家关注的焦点,TmhHost此……

    2026年7月8日
    4300
  • linux zlib怎么编译?linux zlib编译报错解决方法

    在 Linux 系统中编译 zlib 通常非常简单,因为 zlib 是一个轻量级的压缩库,其源代码结构清晰,且大多数 Linux 发行版都提供了标准的构建流程,以下是详细的编译步骤,包括源码编译安装和使用包管理器安装两种方式,从源码编译安装(推荐用于自定义配置或开发)下载源码你可以从 zlib 官方网站 下载最……

    2026年7月12日
    2600
  • 德国4837大带宽月付多少?美国圣何塞BGP优化线路推荐

    白丝云IDC凭借德国4837与美西9929线路优势,提供圣何塞大陆优化BGP服务,月付低至26元起,是追求低延迟与高性价比用户的优选方案,在服务器租赁市场,价格与性能的平衡一直是用户最纠结的痛点,对于需要访问中国大陆的业务而言,线路的稳定性往往比单纯的带宽大小更重要,白丝云IDC推出的这一组合方案,精准切中了这……

    2026年6月30日
    2300
  • 腾讯240g内存服务器要多少钱?,值得买吗?

    腾讯240GB内存服务器的月租费用根据实例类型、计费周期及附加资源差异较大,基础配置年付均价约在3000元至8000元区间,若通过简米科技等授权服务商托管,可进一步降低综合成本并获取定制化方案,解析腾讯240G内存服务器的定价逻辑实例规格与计费模式腾讯云提供的高内存实例一般搭配较大内存,240GB内存通常出现在……

    2026年8月22日
    500
  • 4核8G服务器游戏能进多少人,适合什么游戏?

    4核8G服务器在游戏场景中能承载的玩家数量并非固定值,但根据行业经验,多数情况下可以支撑50-200人同时在线,关键取决于游戏类型和代码优化程度,这个范围覆盖了从轻量级休闲游戏到中重度MMO的不同需求,下面我们拆解具体影响因素,并告诉你如何评估和优化,影响承载量的核心因素游戏类型决定资源消耗不同游戏对服务器资源……

    2026年8月2日
    100
  • 一个服务器可以连多少个TCP,连接数上限是多少?

    一个服务器能连多少个TCP连接,答案是:远不止65535这个数字, 决定因素在于四元组组合、文件描述符、内存与内核参数,在合理的调优与硬件条件下,单台服务器承载数十万级并发TCP连接是现实可行的,为什么“65535上限”是误解先解开这个心结,很多朋友第一反应是“端口号只有65535个,TCP连接肯定也超不过这个……

    2026年8月20日
    300
  • Apache服务器怎么安装配置?Apache安装教程详细步骤

    Apache服务器的成功运行依赖于正确的软件获取、环境依赖处理、参数配置文件修改以及安全权限设置,这是构建稳定Web服务的基石,Apache安装过程虽然在不同操作系统上存在差异,但其核心逻辑始终围绕着依赖解决、编译(或安装)与配置优化展开,对于追求高性能与高安全性的运维环境而言,掌握源码编译安装与配置文件深度优……

    2026年3月19日
    11000
  • 4U服务器耗电功率一般多少?,一天耗电多少度?

    4U服务器耗电功率通常介于500W至1500W之间,具体数值取决于CPU、GPU、内存及硬盘等硬件配置,高性能计算或GPU密集型机型可超过2000W,4U服务器的典型功耗范围不同配置下的功率差异4U服务器的功耗并非固定值,而是随内部组件组合动态变化,一台用于常规企业应用的双路4U服务器,搭载主流Xeon处理器……

    2026年8月6日
    400

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注