汇编学习之nasm编译器下载使用
- 下载nasm编译器
我是在centos7虚拟机上面进行试验学习,所以对应的结果和输入都是命令行的输入输出。
wget https://www.nasm.us/pub/nasm/releasebuilds/2.14/nasm-2.14.tar.gz
使用wegt命令下载压缩包,解压
tar -xvzf nasm-2.14.tar.gz
切换到对应目录并编译安装
cd nasm-2.14
./configure
make 编译
make install 安装
编译安装过程中会出现很多warning,一开始也是很紧张,不过暂时还没发现有什么不好的现象,主要是说c99不支持之类的警告信息
2. 测试nasm编译器
直接就当前目录进行编程
vim hello.s
直接照抄网上大神的一篇hello,world的汇编测试代码
section .data ;section declaration
msg db "Hello, world!",0xA ;our dear string
len equ $ - msg ;length of our dear string
section .text ;section declaration;we must export the entry point to the ELF linker orglobal _start ;loader. They conventionally recognize _start as their;entry point. Use ld -e foo to override the default.
_start:
;write our string to stdoutmov eax,4 ;system call number (sys_write)mov ebx,1 ;first argument: file handle (stdout)mov ecx,msg ;second argument: pointer to message to writemov edx,len ;third argument: message lengthint 0x80 ;call kernel
;and exitmov eax,1 ;system call number (sys_exit)xor ebx,ebx ;first syscall argument: exit codeint 0x80 ;call kernel
编译
nasm -f elf64 hello.s -o hello.o
链接
ld -s hello.o -o hello.out
最后运行hello.out就行,输出结果如下:
[root@jack nasm-2.14]# ./hello.out
Hello, world!
至此nasm编译器的学习和使用算是拉开了序幕。
补:win10下64位系统官网下载
这个直接点进去下载就可以了,下载后的使用也是黑窗口的样式的。
汇编学习之nasm编译器下载使用相关推荐
- android 编译汇编,【隋义】1.安卓图文教程之安卓环境下汇编学习
本帖最后由 隋义 于 2014-10-6 23:14 编辑 有些朋友说看的有些晕,现视频教程版已发布!! 此教程献给新学习汇编的小菜鸟们(当然这其中也包括我啦! ),大牛勿吐槽也许你们也用得上!第一次 ...
- 编译器发展史5个十年3大人物及编译器知识(公号回复“编译器”下载PDF资料,欢迎转发、赞赏、支持科普)
编译器发展史5个十年3大人物及编译器知识(公号回复"编译器"下载PDF资料,欢迎转发.赞赏.支持科普) 原创: 秦陇纪 科学Sciences 今天 科学Sciences导读:继本号 ...
- Notepad++集成nasm编译器
Notepad++集成nasm编译器 1.下载NASM编译器和Notepad++; 2.编写一个汇编程序 3.点击图形界面的运行: 4.输入运行程序名,其中D:\Environment\nasm\na ...
- 8086汇编学习之[BX],CX寄存器与loop指令,ES寄存器等
同类学习笔记总结: (一).8086汇编学习之基础知识.通用寄存器.CS/IP寄存器与Debug的使用 (二).8086汇编学习之DS寄存器.SS/SP寄存器 一.汇编程序的基本格式: 1.基本格式与 ...
- 15 计算机底层——二进制到汇编学习
计算机底层--二进制到汇编学习 1.概述 语言 机制 进制如何计算 二进制 数据宽度 有符号和无符号数 原码和反码 位运算 位运算计算 汇编 寄存器 内存 汇编指令 内存复制 堆栈的指令 汇编如何写函 ...
- 二进制到汇编学习-狂神说-雁迟
[狂神说]最通俗易懂的计算机底层教学,二进制到汇编学习!视频地址:https://www.bilibili.com/video/BV1ni4y1G7B9 概述 语言 人和人沟通?语言!老外!计算机!学 ...
- c语言编译器运行窗口,Gcc编译器下载C语言编译器窗口(带有安装教程)v1
gcc编译器是由自由软件基金会开发和启动的GNU编译器套件. 该软件具有在多个平台上的兼容性经验,不仅支持在Windows平台下编译主流编程语言,而且还可以在Linux系统下实现很好的软件应用程序编程 ...
- 汇编学习笔记——汇编指令
目录 汇编指令 nop指令 mov.add.sub指令 adc.sbb指令 and.or指令 移位指令 逻辑左/右移指令 循环左/右移指令 算术左/右移指令 带进位循环左/右移指令 inc指令 pus ...
- Win32汇编学习——windows汇编语法(小甲鱼教程)
Win32汇编学习--windows汇编语法(小甲鱼教程) 1)指令集 .386 语句是汇编语句的伪指令,类似指令有:.8086 . .186 ..286 ..386/.386p . .486/ ...
最新文章
- windows安装go环境变量
- 【netcore基础】.Net core自动作业之Hangfire
- spring mvc学习(9):路径参数
- LinkedList源码阅读笔记(1.8)
- Bootstrap CSS 编码规范之简写形式的属性声明
- NullPointerException : HiveAuthorizerImpl.checkPrivileges(HiveAuthorizerImpl.java:85)
- 抢占计算机与通信设备未来产业制高点 ——《信息产业发展指南》解读
- hadoop生态搭建(3节点)-07.hive配置
- 使用Ubuntu的Crontab定时任务需要注意的地方
- Python爬取广州链家二手房数据
- 生活中,如何学会放下
- 读取图片信息并存储数据为CSV文件
- 春招计算机学校,衡东计算机IT春招学校排名
- Impala String函数大全
- 莫生气,一切对镜皆是考验,对面若不识,还需从头练
- ASO优化常见的问题精选之ASO指数是什么?
- 平板电脑服务器的安装系统安装系统安装系统,苹果平板电脑怎么重装系统 苹果平板电脑重装系统方法【详解】...
- linux服务器磁盘满了怎么办
- 2022-07-28 xm-select 的使用
- springboot打包成jar,并且把依赖包放到jar外面