一、源代码
!
! boot.s -- bootsect.s的框架程序.用代码0x07替换字符串msg1中的1字符,然后在屏幕第一行上显示.
!
.globl begtext,begdata,begbss,endtext,enddata,endbss !全局标示符,供ld86链接使用.
.text !正文段
begtext:
.data !数据段
begdata:
.bss !未初始化数据段
begbss:
.text !正文段
BOOTSEG = 0x07c0 !BIOS加载bootseg代码的原始段地址
entry start !告知链接程序,程序从start标号处开始执行
start:
jmpi go,BOOTSEG !段间跳转.BOOTSEG指出条转段地址,标号go是偏移地址
go: mov ax,cs !段寄存器cs值-->ax,用于初始化数据段寄存器ds和es
mov ds,ax
mov es,ax
mov [msg1+17],ah

本文介绍了如何使用as86汇编器编译boot.s,并在VirtualBox和bochs环境下进行启动。首先展示源代码,然后详细讲解编译、链接步骤,以及在虚拟机中设置启动项。同时提供了参考资料,包括dd命令、Linux设备目录详解和Bochs安装配置。
最低0.47元/天 解锁文章
654

被折叠的 条评论
为什么被折叠?



