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

📄 iolib.s

📁 别人的根据linux0.11改的一个小的操作系统
💻 S
字号:
	.file	"iolib.c"	.section .text.globl _outportb_outportb:	pushl	%ebp	movl	%esp, %ebp	pushl	%ebx	subl	$8, %esp	movl	8(%ebp), %eax	movl	12(%ebp), %edx	movw	%ax, -8(%ebp)	movb	%dl, -12(%ebp)	movl	-8(%ebp), %ebx	movb	-12(%ebp), %cl/APP	movw	%bx,%dx;movb	%cl,%al;outb	%al,%dx;/NO_APP	addl	$8, %esp	popl	%ebx	popl	%ebp	ret.globl _inportb_inportb:	pushl	%ebp	movl	%esp, %ebp	subl	$20, %esp	movl	8(%ebp), %eax	movw	%ax, -20(%ebp)	movb	$0, -1(%ebp)	movl	-20(%ebp), %ecx/APP	movw	%cx,%dx;inb	%dx,%al;movb	%al,%cl;/NO_APP	movb	%cl, -1(%ebp)	movl	$0, %eax	movb	-1(%ebp), %al	leave	ret.globl _clrscr_clrscr:	pushl	%ebp	movl	%esp, %ebp/APP	pushl	%eax;movl	$0x01,%eax;int	$0x80;popl	%eax;/NO_APP	popl	%ebp	ret.globl _scrup_scrup:	pushl	%ebp	movl	%esp, %ebp/APP	pushl	%eax;movl	$0x03,%eax;int	$0x80;popl	%eax;/NO_APP	popl	%ebp	ret.globl _print_print:	pushl	%ebp	movl	%esp, %ebp	subl	$8, %esp	jmp	L10L11:	movl	8(%ebp), %eax	movb	(%eax), %al	cmpb	$10, %al	jne	L12	movl	__scr_loc, %edx	movl	$-858993459, -4(%ebp)	movl	-4(%ebp), %eax	mull	%edx	movl	%edx, %eax	shrl	$7, %eax	leal	1(%eax), %edx	movl	%edx, %eax	sall	$2, %eax	addl	%edx, %eax	sall	$5, %eax	movl	%eax, __scr_loc	incl	8(%ebp)	jmp	L10L12:	movl	8(%ebp), %eax	movb	(%eax), %al	movsbl	%al,%eax	subl	$12, %esp	pushl	%eax	call	_putchar	addl	$16, %esp	incl	8(%ebp)L10:	movl	8(%ebp), %eax	movb	(%eax), %al	testb	%al, %al	jne	L11	leave	ret.globl _memcopy_memcopy:	pushl	%ebp	movl	%esp, %ebp	jmp	L17L18:	movl	12(%ebp), %eax	movb	(%eax), %dl	movl	8(%ebp), %eax	movb	%dl, (%eax)	incl	8(%ebp)	incl	12(%ebp)L17:	decl	16(%ebp)	cmpl	$-1, 16(%ebp)	jne	L18	popl	%ebp	ret.comm _desc,1008.comm _task,1648.comm _process_id,16.comm _p_current,16.comm _p_previous,16.comm _p_ready,16.comm _p_head,16	.ident	"GCC: (GNU) 4.2.1"

⌨️ 快捷键说明

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