findhighestindex.s

来自「zilog的实时操作系统RZK,可以移植到多种处理器上」· S 代码 · 共 59 行

S
59
字号
;/*
;* File				:	FindHighestIndex.s
;*
;* Description		:	Defines FindHighestIndex routine
;* 
;* Copyright 2004 ZiLOG Inc.  ALL RIGHTS RESERVED.
;*
;* This file contains unpublished confidential and proprietary information
;* of ZiLOG, Inc.
;* NO PART OF THIS WORK MAY BE DUPLICATED, STORED, PUBLISHED OR DISCLOSED 
;* IN ANY FORM WITHOUT THE PRIOR WRITTEN CONSENT OF ZiLOG, INC.
;* This is not a license and no use of any kind of this work is authorized
;* in the absence of a written license granted by ZiLOG, Inc. in ZiLOG's 
;* sole discretion 
;*/

	.def _FindHighestIndex
	.ref _DQPriorityBitMap	
	.ref _BitMap	
	.assume	adl=1
;/* Function		:	FindHighestIndex
;*
;* Description		:	Finds highest index in the given bitmap
;* 
;* Inputs			:	DQPriorityBitMap
;*							
;* Outputs			:	highest set index in the bitmap
;*							
;*
;* Dependencies		:	None.
;*/
_FindHighestIndex:
	XOR A,A
	LD BC,0
	LD HL, _DQPriorityBitMap
	CPI
	JP NZ, _LOOK_UP
	CPI
	JP NZ, _LOOK_UP
	CPI
	JP NZ, _LOOK_UP
	CPI


_LOOK_UP:
	DEC HL
	LD DE,0
	LD E,(HL)
	LD HL, _BitMap
	ADD HL,DE
	LD E,(HL)
	LD A,C
	CPL A
	RLA 
	RLA 
	RLA 
	ADD A,E
	DEC A
	RET

⌨️ 快捷键说明

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