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

📄 u64_pub.h

📁 abstract rtos
💻 H
字号:
#ifdef __cplusplusextern "C"{#endif #ifndef __INC_U64_PUB_H__#define __INC_U64_PUB_H__#define AOS_U64_HIGH( pU64 )    ((pU64)->ulHigh)#define AOS_U64_LOW( pU64 )     ((pU64)->ulLow)#define AOS_U64_SET( pU64, H, L )\\do{\    (pU64)->ulHigh = H;\    (pU64)->ulLow  = L;\}while(0)#define AOS_U64_ZERO( pU64, H, L )\\do{\    (pU64)->ulHigh = 0;\    (pU64)->ulLow  = 0;\}while(0)#define AOS_U64_INC( pU64 )\\do{\    if( 0 == ++ (pU64)->ulLow )\    {\        (pU64)->ulHigh++;\    }\}while(0)#define AOS_U64_DEC( pU64 )\\do{\    if( 0 == (pU64)->ulLow-- )\    {\        (pU64)->ulHigh--;\    }\}while(0)#define AOS_U64_ADD32( pU64, I )\\do{\    (pU64)->ulLow += I;\    if( (pU64)->ulLow < (I) )\    {\        (pU64)->ulHigh++;\    }\}while(0)#define AOS_U64_SUB32( pU64, I )\\do{\    if( (pU64)->ulLow < (I) )\    {\        (pU64)->ulHigh--;\    }\    (pU64)->ulLow -= I;\}while(0)#define AOS_U64_ADD64( pU64_N, pU64_M )\\do{\    (pU64_N)->ulLow += (pU64_M)->ulLow;\    (pU64_N)->ulHigh += (pU64_M)->ulHigh;\    if( (pU64_N)->ulLow < (pU64_M)->ulLow )\    {\        (pU64_N)->ulHigh++;\    }\}while(0)#define AOS_U64_SUB64( pU64_N, pU64_M )\\do{\    (pU64_N)->ulHigh -= (pU64_M)->ulHigh;\    if( (pU64_N)->ulLow < (pU64_M)->ulLow )\    {\        (pU64_N)->ulHigh--;\    }\    (pU64_N)->ulLow -= (pU64_M)->ulLow;\}while(0)#define AOS_U64_COPY( pU64_N, pU64_M )\\do{\    (pU64_N)->ulHigh = (pU64_M)->ulHigh;\    (pU64_N)->ulLow  = (pU64_M)->ulLow;\}while(0)#define AOS_U64_COMPARE( pU64_N, pU64_M )\(((pU64_N)->ulHigh == (pU64_M)->ulHigh) ? \ (((pU64_N)->ulLow == (pU64_M)->ulLow)  ? (0) : (((pU64_N)->ulLow > (pU64_M)->ulLow) ? (1) : (-1))) : \ (((pU64_N)->ulHigh > (pU64_M)->ulHigh) ? (1) : (-1)))#define AOS_U64_LSH( pU64_N )\\do{\    (pU64_N)->ulHigh <<= 1;\    if( 0x80000000 & (pU64_N)->ulLow )\    {\        (pU64_N)->ulHigh |= 0x1;\    }\    (pU64_N)->ulLow  <<= 0x1;\}while(0)#define AOS_U64_RSH( pU64_N )\\do{\    (pU64_N)->ulLow  >>= 1;\    if( 0x1 & (pU64_N)->ulHigh )\    {\        (pU64_N)->ulLow |= 0x80000000;\    }\    (pU64_N)->ulHigh >>= 1;\}while(0)#define AOS_U64_MUL32( pU64_N, I ) aos_u64_mul32(pU64_N, I)#define AOS_U64_DIV32( pU64_N, I ) aos_u64_div32(pU64_N, I)#define AOS_U64_DIV32REVISE( pU64_N, I, pulRes ) aos_u64_div32revise(pU64_N, I, pulRes)#define AOS_U64_DIV64( pU64_N, pU64_M ) aos_u64_div64(pU64_N, pU64_M)U32 aos_u64_mul32( U64 *pU64, U32 u32bit );U32 aos_u64_div32( U64 *pU64, U32 u32bit );U32 aos_u64_div32revise( U64 *pU64, U32 u32bit, U32*pulReviseVal );U32 aos_u64_div64( U64 *pU64_N, U64 *pU64_M );#endif#ifdef __cplusplus}#endif 

⌨️ 快捷键说明

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