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

📄 addbfcrc-mc68020.s

📁 操作系统SunOS 4.1.3版本的源码
💻 S
字号:
	.data	.evensccsid:	.asciz	"@(#)addbfcrc-mc68020.S 1.1 92/07/30"| tcrc| addbfcrc(buf, size, crc)|         register char *buf;|         register int size;|         register tcrc crc;| {|         register int i;| |         for (i = 0;  i < size;  ++i)|                 crc = crctab[(int)(crc ^ buf[i]) & 0xff] ^ (crc >> 8);|         return(crc);| }#ifdef USE_ASM	.text	.proc	.globl	_addbfcrc_addbfcrc:	link	a6,#0	moveml	d6/d7,sp@-	movl	a6@(16),d0		| d0 = crc	tstl	a6@(12)			| size > 0?	jle	out	lea	_crctab,a0		| a0 = &crctab[]	movl	a6@(8),d1	movl	d1,a1			| a1 is pointer to buf	addl	a6@(12),d1		| d1 = buf + size	clrl	d7			| d7 is temp for crctab[d7]again:	movb	a1@+,d7			| buf[i]	eorb	d0,d7			| crc ^ buf[i]	movl	a0@(0,d7:w:4),d6	| crctab[crc ^ buf[i]]	lsrl	#8,d0			| crc >> 8	eorl	d6,d0			| crctab[crc ^ buf[i]] ^ (crc >> 8)	cmpl	d1,a1	jcs	againout:	moveml	sp@+,d6/d7	unlk	a6	rts#endif

⌨️ 快捷键说明

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