int64.c

来自「深圳市微逻辑电子有限公司 巨果&#8226 Kingmos&reg 系统核心」· C语言 代码 · 共 26 行

C
26
字号
// right shift
__int64 __imp___rt_srsh( __int64 l, int shift )
{
#ifdef SWAP
	struct {
		unsigned long lower;
		long upper;
	} l64;
#else
	struct {
		long upper;
		unsigned long lower;
	} l64;
#endif
	int i = shift;
	unsigned long mask = 0xffffffff;
	*(__int64*)&l64 = l;
	l64.lower >>= i;
	//mask >>= 32 - i;
	l64.lower |= l64.upper << (32 - i);
	l64.upper >>= i;
	l = *(__int64*)&l64;		 
	// lilin change- 2001.12.28-begin
	return l;
}

⌨️ 快捷键说明

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