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

📄 ec_arm_linux.c

📁 分别在x86
💻 C
字号:
uint32 cq_ntohl(uint32 value){	uint32 tmp;	asm volatile ("EOR %1, %0, %0, ROR #16\n"		"BIC %1, %1, #0xff0000\n"		"MOV %0, %0, ROR #8\n"		"EOR %0, %0, %1, LSR #8\n"		: "=r" (value), "=r" (tmp)		: "0" (value), "1" (tmp));	return value;}void cq_ntohl_array(uint32* arr, uint32 num){	uint32 tmp;	uint32 value;	asm volatile (""		"next:\n"		"ldr %2, [%0]\n"		"EOR %3, %2, %2, ROR #16\n"		"BIC %3, %3, #0xff0000\n"		"MOV %2, %2, ROR #8\n"		"EOR %2, %2, %3, LSR #8\n"		"str %2, [%0], #4\n"		"subs %1, %1, #1\n"		"bne next\n"		: "=r" (arr), "=r" (num), "=r" (value), "=r" (tmp)		: "0" (arr), "1" (num), "2" (value), "3" (tmp));}

⌨️ 快捷键说明

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