NASM x86汇编入门指南

NASM x86汇编入门指南

原文链接:http://docs.cs.up.ac.za/programming/asm/derick_tut/#helloworld

 

内容

1.       介绍

2.       为什么写这篇文章

3.       NASM(The Netwide Assembler)汇编编译工具

3.1   为什么使用NASM

3.2   如何安装NASM

4.       Linux汇编介绍

4.1   DOSLinux汇编主要不同的地方

 

4.2   一个汇编程序的组成

4.3   linux系统调用

4.3.1          阅读参考手册

 

4.4   “Hello World!”汇编程序

4.5   编译和链接汇编代码

5.       更多的高级概念

 

5.1   命令行参数和栈

 

5.2   过程调用和跳转

附录A 如何使用linux终端

附录B linux安装NASM或其它汇编工具

附录C 参考

 

一、            介绍

 

本教程是介绍如何在linux环境下编写汇编代码的入门文章,为了适应不同的人,这里包含了两个版本。

1.       一步一步学习指导:这个版本详细的进行了解释,它假设你没有DOS基础,也没有使用过linux,并教给你一些基本技能,比如如何使用终端和DOS命令.

2.       快速开始:如果你急于想体验linux汇编程序,编译并运行它,如果你有一些DOS汇编基础并能使用linux终端软件,你可以先看这篇教程。它简单讲解了linuxDOS汇编的不同,以至于不会让你混淆它们。

这里,我们使用NASM作为汇编编译工具,关于它的细节可以看附录C:参考资料,来获取更多信息。

二、            为什么写这篇文章?

最主要的原因是为了使得在linux下编写汇编程序比DOS下变得更容易、更好更实用,并且,还将教给你一些linux方面知识(除非你已经对它很熟悉)

用汇编编程看起来相当受虐待(并且用它写整个代码也很荒谬),尤其是在如今,拥有很多功能强大的编译器甚至是图形界面的集成开发环境,生成的汇编代码甚至超过了一些专业级的汇编程序员。但是,使用汇编有一个优点就是有助于你更加熟悉处理器和内核的内部工作原理,特别是有时候在C/C++中内嵌汇编尤其有用。如果你想让你的代码执行得更快,你可以调整并优化你的编译器生成的汇编代码(前提是你比现代编译器的编写者更能处理好生成的代码。

三、            NASM(The Netwide Assembler)汇编编译工具

3.1为什么使用NASM

linux几乎总是默认安装asgas作为默认的汇编程序编译器,然而,我们这里使用的NASM,采用intel语法,类似于TASMMASM和其它的DOS汇编工具。(asgas采用AT&T语法,与intel语法有些不同,例如AT&T

  • 1
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值