要分析fasm1.0的源代码,首先去网上下载fasm 1.0版本的源代码。然后需要进行一些准备工作,才能开始分析代码。
要准备的工具:Virtual PC 2007虚拟机软件安装包,Bochs 2.1.1虚拟机软件安装包,Winimage磁盘镜像软件安装包,一张空白软盘镜像文件,notepad++软件软件安装,hexedit工具。
搭建过程: 1.安装Virtual PC 2007虚拟机软件;
2.安装Bochs2.1.1虚拟机软件;
3.安装Winimage磁盘镜像软件;
4.安装notepad++软件;
5.将fasm1.0软件包中的example中的comdemo.asm拿出来,我们就对它进行编译,从而学习汇编的过程。
将comdemo.asm中的代码进行精简,如下所示:
org 100h
use16
mov ah,9
mov dx,a
int 21h
int 20h
a db 'Hello',24h
通过hexedit工具查看comdemo.asm文件,可以看到,它只有71个字节大小。
在bochs中调用 "fasm comdemo.asm hello.com" 命令后,生成一个hello.com文件。通过使用hexedit工具查看hello.com文件,可以看到,它只有15个字节大小。
我的任务就是搞明白,到底fasm汇编器执行了哪些代码,从而分析了comdemo.asm文件并生成了hello.com文件。