Windows X86-64 位汇编语言入门 Windows X64 汇编入门( 1) 最近断断续续接触了些64 位 汇编的知识,这里小结一下,一是阶段学习的回顾,二是希望对64 位 汇编新手有所帮助
我也是刚接触这方面知识,文中肯定有错误之处,大家多指正
文章的标题包含了本文的四方面主要内容: ( 1) Windows:本文是在windows 环境下的汇编程序设计,调试环境为Windows Vista 64位版,调用的均为windows API
( 2) X64:本文讨论的是x64 汇编,这里的x64 表示AMD64 和 Intel 的 EM64T,而不包括IA64
至于三者间的区别,可自行搜索
( 3) 汇编:顾名思义,本文讨论的编程语言是汇编,其它高级语言的64 位编程均不属于讨论范畴
( 4) 入门:既是入门,便不会很全
其一,文中有很多知识仅仅点到为止,更深入的学习留待日后努力
其二,便于类似我这样刚接触x64 汇编的新手入门
本文所有代码的调试环境:Windows Vista x64, Intel Core 2 Duo
建立开发环境 1
1 编译器的选择 对应于不同的x64 汇编工具,开发环境也有所不同
最普遍的要算微软的MASM, 在 x64环境中,相应的编译器已经更名为ml64
exe,随Visual Studio 2005 一起发布
因此,如果你是微软的忠实fans,直接安装VS2005 既可
运行时,只需打开相应的64 位命令行窗口(图1),便可以用ml64 进行编译了
第二个推荐的编译器是GoASM, 共包含三个文件:GoASM 编译器、GoLINK 链接器和GoRC资源编译器,且自带了Include 目录
它的最大好外是小,不用为了学习64 位 汇编安装几个 G 的 VS
因此,本文的代码就在GoASM 下编译
第三个Yasm,