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

📄 strcpy.s

📁 这是一个同样来自贝尔实验室的和UNIX有着渊源的操作系统, 其简洁的设计和实现易于我们学习和理解
💻 S
字号:
TEXT strcpy(SB), $-4	MOVW		R0, to+0(FP)	/* need to save for return value */	MOVW		from+4(FP), R1	MOVW		$0xFF, R2	/* mask */salign:					/* align source on 4 */	AND.S		$3, R1, R3	BEQ		dalign	MOVBU.P		1(R1), R3	/* implicit write back */	TST		R3, R2	MOVBU.P		R3, 1(R0)	/* implicit write back */	BNE		salign	B		returndalign:				/* is destination now aligned? */	AND.S		$3, R0, R3	BNE		uloopaloop:	MOVW.P		4(R1), R4	/* read 4, write 4 */	TST		R4, R2		/* AND.S R3, R2, Rx */	TST.NE		R4>>8, R2	TST.NE		R4>>16, R2	TST.NE		R4>>24, R2	BEQ		tail	MOVW.P		R4, 4(R0)	B		aloopuloop:	MOVW.P		4(R1), R4	/* read 4, write 1,1,1,1 */tail:	AND.S		R4, R2, R3	MOVBU.NE.P	R3, 1(R0)	AND.NE.S	R4>>8, R2, R3	MOVBU.NE.P	R3, 1(R0)	AND.NE.S	R4>>16, R2, R3	MOVBU.NE.P	R3, 1(R0)	AND.NE.S	R4>>24, R2, R3	MOVBU.P		R3, 1(R0)	BNE		uloop	B		returnreturn:	MOVW		to+0(FP), R0	RET

⌨️ 快捷键说明

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