⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 startup.s

📁 一个操作系统,用C语言实现开发的,我在一个浙江大学的操作系统实验网站找到.大家学习以下
💻 S
字号:
# Loader for XSFS
# Loaded at 0800:0000

.text

.global _start

.code16
.org 0

# input from boot sector
# INPUT:	DX = head:drive
# 			SI = xsfs_desc
#			ECX = l_base
#			EAX	= l_part
#			BX = w_ext
#			DS = segment of boot sector

_start:
			# initialize segment registers
			movl	%eax, %edi		# save EAX
			movw	%cs, %ax
			movw	%ax, %es
			movw	%ax, %ss
			movw	$0x7ff0, %sp
			pushw	%ds
			movw	%ax, %ds
			movl	%edi, %eax

			# save parametters from boot sector
			movw	%dx, __bs_dx
			movl	%ecx, __bs_base
			movl	%eax, __bs_part
			movw	%bx, __bs_ext
			popw	%ds
			addw	$9, %si			# skip signature
			leaw	__bs_xsfs, %di
			movw	$6, %cx			# sizeof(XSFSDESC) = 6 * sizeof(_u32)
			orw		%cx, %cx		# clear ZF
			cld
			rep
			movsl
			movw	%cs, %ax
			movw	%ax, %ds

			call	_vmain

			movw	$0, %ax
			int		$0x16
			int		$0x19

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -