NASM中文手册:80x86汇编器指南
5星 · 超过95%的资源 需积分: 9 103 浏览量
更新于2024-10-04
3
收藏 832KB PDF 举报
"nasm中文手册.pdf"
NASM(Netwide Assembler)是一个强大的、高度可移植的80x86汇编器,旨在提供简洁且易于理解的语法,类似于Intel语法,但更为简化。它支持多种目标文件格式,如Linux、NetBSD/FreeBSD的a.out、ELF、COFF,以及微软的16位OBJ和Win32格式。此外,NASM还能够生成纯二进制文件,并且全面支持 Pentium、P6、MMX、3DNow!、SSE 和 SSE2 等指令集。
在手册的第一章,介绍了NASM的基本信息。其中提到,NASM的诞生是因为现有的汇编器存在局限性,而NASM的设计目标是提高可移植性和模块化。手册还提到了NASM的许可条件,以及如何联系开发者获取帮助。关于安装,手册分别讲解了在DOS/Windows和Unix系统下的安装步骤。
第二章详细阐述了如何运行NASM。NASM命令行语法的各个选项被逐一解析,例如:
- "-o"选项用于指定输出文件的名称。
- "-f"选项用来设定输出文件的格式。
- "-l"选项可以生成列表文件。
- "-M"选项用于创建Makefile依赖关系。
- "-F"选项选择调试信息的格式。
- "-g"选项开启调试信息。
- "-E"选项将错误信息写入文件。
- "-s"选项将错误信息输出到标准输出。
- "-i"选项定义包含文件的搜索路径。
- "-p"、"-d"、"-u"选项分别用于预包含文件、预定义和取消宏定义。
- "-e"、"-a"选项控制预处理过程。
- "-On"选项设定优化级别。
- "-t"选项启用TASM兼容模式。
- "-w"选项管理汇编警告。
- "-v"选项打印版本信息。
- "NASMENV"环境变量也会影响NASM的行为。
对于从MASM转用NASM的用户,手册提供了快速入门的指导,强调了两者之间的关键差异,比如NASM的大小写敏感性、对内存地址的引用方式、变量类型的处理、"ASSUME"指令的缺失、内存模型的支持,以及浮点处理和其它一些语法差异。
第三章深入介绍了NASM的编程语言特性。源程序行的构成、伪指令的使用(如"DB"、"RESB"、"INCBIN"、"EQU"和"TIMES"),以及有效地址和常数的定义等都被详细讲解,帮助程序员更好地理解和编写NASM汇编代码。
手册的这些内容为使用NASM进行80x86汇编编程提供了详尽的指南,无论是新手还是有经验的程序员,都能从中获益。通过学习和掌握NASM,开发者可以更高效地利用底层硬件资源,编写出高性能的系统级程序。
232 浏览量
2024-09-04 上传
229 浏览量
2023-09-18 上传
276 浏览量
258 浏览量
masmaster
- 粉丝: 141
- 资源: 6
最新资源
- readandwrite
- Probabilidade_e_Estatistica:Atividade eConteúdodaMatéria
- DLT和Tsai两步法标定相机的Matlab代码 里面附带验证程序
- java-20210325:Java
- minto
- Grid源代码.rar
- solve(f,a,b):如果可能,解f(x)= 0。-matlab开发
- WBD:Oracle Database 11g + GUI上的电话数据库项目
- springboot基础demo下载.zip
- 黑色闹钟3D模型
- HSKA-App:如果您在卡尔斯鲁厄应用科学大学学习INFB,MNIB,MKIB或INFM,则可以使用此应用程序获取有关成绩及更多信息的有用小部件。
- trigintpoly:函数 trigintpoly 使用 fft 来求三角插值多项式-matlab开发
- angular-gmohsw:用StackBlitz创建:high_voltage:
- Selenium网格拉胡尔
- MIPCMS内容管理系统 更新包 V2.1.2
- EventRepoRestApi:用Springboot和内存H2数据库编写的Rest API