emptyset.asm

来自「汇编编程艺术」· 汇编 代码 · 共 53 行

ASM
53
字号
StdGrp		group	stdlib,stddata
stddata		segment	para public 'sldata'
stddata		ends
;
stdlib		segment	para public 'slcode'
		assume	cs:stdgrp
;
		extrn	sl_malloc:far
;
; EmptySet-	Clears an existing set's elements changing it to the empty
;		set.
;
;		ES:DI must point at set (first byte of desired set) upon
;		entry.
;
;
		public	sl_EmptySet
;
sl_EmptySet	proc	far
		push	ds
		push	ax
		push	cx
		pushf
		push	di
		push	si
;
		mov	ax, es
		mov	ds, ax
		mov	ah, [di]		;Get Mask byte.
		not	ah
		add	di, 8			;Point at start of set
		mov	si, di
		mov	cx, 256
ClearSet:	lodsb
		and	al, ah
		stosb
		loop	ClearSet
;
		pop	si
		pop	di
		popf
                pop	cx
		pop	ax
		pop	ds
		clc
		ret
;
sl_EmptySet	endp
;
;
stdlib		ends
		end

⌨️ 快捷键说明

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