在win7下使用nasm编译asm系统源码并在VMware上运行的图文教程

时间:2021-03-17 01:23:38

When Do We Write Our Chinese OS ?

1.工欲善其事,必先利其器!

先下载需要的文件:虚拟机(用来运行你编译出来的系统),nasm(用来编译源码),notepad++,

虚拟机我用的是vmware,我这里有破解汉化版的,下载地址:http://pan.baidu.com/s/1i3Hw4gX,nasm我也有,下载地址http://pan.baidu.com/s/1gdKizWR,notepad++就不说了,工具有了就是安装,这都很简单,不说了。

2.写代码

在nasm的安装目录下创建一个.asm文件,举例为hello-os.img,添加如下代码:
org 07c00h ; 告诉编译器程序加载到 7c00处 

                      mov ax, cs 

                      mov ds, ax 

                      mov es, ax 
                      
                      call DispStr ; 调用显示字符串例程 

                      jmp $ ; 无限循环 

                DispStr: 

                      mov ax, BootMessage 
                      
                      mov bp, ax ; es:bp = 串地址 

                      mov cx, 16 ; cx = 串长度 

                      mov ax, 01301h ; ah = 13, al = 01h 
                      
                      mov bx, 000ch ; 页号为 0(bh = 0) 黑底红字(bl = 0Ch,高亮) 

                      mov dl, 0 
                      
                      int 10h ; 10h 号中断 

                      ret 

                BootMessage: db "Hello, OS world!" 
                
                     times 510-($-$$) db 0 ; 填充剩下的空间,使生成的二进制代码恰好为 

                                                    ; 512字节 
                      dw 0xaa55 ; 结束标志

然后保存,打开nasmpath.bat,运行nasm hello-os.asm -o hello-os.img命令 在win7下使用nasm编译asm系统源码并在VMware上运行的图文教程

运行后会在你的nasm目录下生成一个hello-os.img文件。

3.使用虚拟机运行你的系统

打开虚拟机,点击创建新的虚拟机在win7下使用nasm编译asm系统源码并在VMware上运行的图文教程 记住在这一步的时候勾选稍后安装操作系统,然后就都选next。 创建好了之后点击编辑虚拟机设置在win7下使用nasm编译asm系统源码并在VMware上运行的图文教程 在win7下使用nasm编译asm系统源码并在VMware上运行的图文教程
点击添加 然后添加软盘驱动器在win7下使用nasm编译asm系统源码并在VMware上运行的图文教程 勾选使用软盘映像,点击下一步 在win7下使用nasm编译asm系统源码并在VMware上运行的图文教程
添加你之前编译好的img文件,也就是你的系统 在win7下使用nasm编译asm系统源码并在VMware上运行的图文教程
然后保存,开启虚拟机,你会发现那鲜红的hello,OS world! 在win7下使用nasm编译asm系统源码并在VMware上运行的图文教程

第一次写博客,难免会出错,如果发现,请及时告知,不喜勿喷。我写博客的目的只是为了帮助新手入门,我也刚会编译,其中的辛酸很痛苦。。。 抛砖引玉,希望中国能早日做出属于自己的OS!