CentOS8-NASM-汇编环境搭建

搞了很久才搭建成功,记录一下

建议刚入门的同学学习的时候,尽量先选择一种汇编格式走下去,不然很容易搞混,打击自信心。

我采用的环境搭配是汇编器NASM、链接器GCC中的ld、系统64位的CentOS8

gcc

一般linux系统中都会自带的有gcc,而gcc中包含链接器ld,如果后面提示版本信息错误请更新gcc版本

nasm

按照官网的提示,如果需要使用yum安装nasm的话,将nasm.repo源安装到yum的源目录下,CentOS8的yum源的位置为/etc/yum.repos.d,nasm.repo文件内容如下

[nasm]
name=The Netwide Assembler
baseurl=http://www.nasm.us/pub/nasm/stable/linux/
enabled=1
gpgcheck=0

[nasm-testing]
name=The Netwide Assembler (release candidate builds)
baseurl=http://www.nasm.us/pub/nasm/testing/linux/
enabled=0
gpgcheck=0

[nasm-snapshot]
name=The Netwide Assembler (daily snapshot builds)
baseurl=http://www.nasm.us/pub/nasm/snapshots/latest/linux/
enabled=0
gpgcheck=0

然后使用yum install nasm即可安装,nasm -v查看版本信息

demo

  1. 编写汇编文件
  2. 使用nasm汇编器进行汇编生成目标文件
  3. 使用gcc的链接器ld对目标文件进行链接生成可执行文件

简单的汇编demo

section .data

section .text

global main

main:
    mov eax, 1
    inc eax
    mov ebx, eax

mov eax, 1
mov ebx, 0
int 80h

编译链接命令

# 32 bit version
# nasm -f elf demo.s -o demo.o
# ld -e main -m elf_i386 demo.o -o demo

# 64 bit version
# 编译命令,执行后生成目标文件
nasm -f elf64 demo.s -o demo.o
# 链接命令,执行后生成可执行文件
ld -e main -m elf_x86_64 demo.o -o demo

然后使用./demo就可以执行了,不过应该是没什么感觉的,可以使用调试工具gdb来更加直观的感受,下次见。

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
配置CentOS 8 Stream使用阿里云源的步骤如下: 1. 首先,确保你的CentOS 8 Stream环境可以访问外网,可以通过ping命令测试是否能够ping通mirrors.aliyun.com。 2. 备份原有的官方yum源配置文件: ``` mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup ``` 3. 下载阿里云的CentOS 8 Stream源配置文件: ``` wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-8.repo ``` 4. 清除并生成缓存: ``` yum clean all yum makecache ``` 5. 确认阿里云源已经生效: ``` yum list ``` 请注意,以上步骤适用于CentOS 8 Stream版本。如果你使用的是其他版本的CentOS,请根据对应版本的阿里云源配置文件进行相应的操作。 #### 引用[.reference_title] - *1* *2* [CentOS7配置阿里云镜像源(超详细过程)](https://blog.csdn.net/KingveyLee/article/details/114984534)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [CentOS-Stream-9-latest-x86_64 更换为aliyun源 更换阿里源](https://blog.csdn.net/y31307/article/details/127456334)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值