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

📄 iolib.s

📁 操作系统源代码
💻 S
字号:
! Some I/O related routines like:!	unsigned char inb(int port);!	unsigned short inw(int port);!	void outb(int port, int value);!	void outw(int port, int value);!	void rep_inb(int port, unsigned char *buf, size_t count);!	void rep_inw(int port, unsigned short *buf, size_t count);!	void rep_outb(int port, unsigned char *buf, size_t count);!	void rep_outw(int port, unsigned short *buf, size_t count);!	void intr_enable(void);!	void intr_disable(void);.sect .text; .sect .rom; .sect .data; .sect .bss.sect .text.define _inb_inb:	push	ebp	mov	ebp, esp	mov	edx, 8(ebp)		! port	xor	eax, eax	inb	dx			! read 1 byte	pop	ebp	ret.define _inw_inw:	push	ebp	mov	ebp, esp	mov	edx, 8(ebp)		! port	xor	eax, eax    o16	in	dx			! read 1 word	pop	ebp	ret.define _outb_outb:	push	ebp	mov	ebp, esp	mov	edx, 8(ebp)		! port	mov	eax, 8+4(ebp)		! value	outb	dx			! output 1 byte	pop	ebp	ret.define _outw_outw:	push	ebp	mov	ebp, esp	mov	edx, 8(ebp)		! port	mov	eax, 8+4(ebp)		! value    o16	out	dx			! output 1 word	pop	ebp	ret.define _rep_inb_rep_inb:	push	ebp	mov	ebp, esp	push	edi	mov	edx, 8(ebp)		! port	mov	edi, 12(ebp)		! buf	mov	ecx, 16(ebp)		! byte count	rep	inb	dx			! input many bytes	pop	edi	pop	ebp	ret.define _rep_inw_rep_inw:	push	ebp	mov	ebp, esp	push	edi	mov	edx, 8(ebp)		! port	mov	edi, 12(ebp)		! buf	mov	ecx, 16(ebp)		! byte count	shr	ecx, 1			! word count	rep    o16	in	dx			! input many words	pop	edi	pop	ebp	ret.define _rep_outb_rep_outb:	push	ebp	mov	ebp, esp	push	esi	mov	edx, 8(ebp)		! port	mov	esi, 12(ebp)		! buf	mov	ecx, 16(ebp)		! byte count	rep	outb	dx			! output many bytes	pop	esi	pop	ebp	ret.define _rep_outw_rep_outw:	push	ebp	mov	ebp, esp	push	esi	mov	edx, 8(ebp)		! port	mov	esi, 12(ebp)		! buf	mov	ecx, 16(ebp)		! byte count	shr	ecx, 1			! word count	rep    o16	out	dx			! output many words	pop	esi	pop	ebp	ret.define _intr_disable_intr_disable:	push	ebp	mov	ebp, esp	cli	pop	ebp	ret.define _intr_enable_intr_enable:	push	ebp	mov	ebp, esp	sti	pop	ebp	ret

⌨️ 快捷键说明

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