sc_unsigned.h
来自「基于4个mips核的noc设计」· C头文件 代码 · 共 1,850 行 · 第 1/5 页
H
1,850 行
// DIVision operators: friend sc_signed operator / (const sc_unsigned& u, const sc_signed& v); friend sc_signed operator / (const sc_signed& u, const sc_unsigned& v); friend sc_unsigned operator / (const sc_unsigned& u, const sc_unsigned& v); friend sc_signed operator / (const sc_unsigned& u, int64 v); friend sc_unsigned operator / (const sc_unsigned& u, uint64 v); friend sc_signed operator / (const sc_unsigned& u, long v); friend sc_unsigned operator / (const sc_unsigned& u, unsigned long v); friend sc_signed operator / (const sc_unsigned& u, int v); friend sc_unsigned operator / (const sc_unsigned& u, unsigned int v) { return operator/(u, (unsigned long) v); } friend sc_signed operator / (int64 u, const sc_unsigned& v); friend sc_unsigned operator / (uint64 u, const sc_unsigned& v); friend sc_signed operator / (long u, const sc_unsigned& v); friend sc_unsigned operator / (unsigned long u, const sc_unsigned& v); friend sc_signed operator / (int u, const sc_unsigned& v); friend sc_unsigned operator / (unsigned int u, const sc_unsigned& v) { return operator/((unsigned long) u, v); } sc_unsigned& operator /= (const sc_signed& v); sc_unsigned& operator /= (const sc_unsigned& v); sc_unsigned& operator /= (int64 v); sc_unsigned& operator /= (uint64 v); sc_unsigned& operator /= (long v); sc_unsigned& operator /= (unsigned long v); sc_unsigned& operator /= (int v) { return operator/=((long) v); } sc_unsigned& operator /= (unsigned int v) { return operator/=((unsigned long) v); } friend sc_unsigned operator / (const sc_unsigned& u, const sc_uint_base& v); friend sc_signed operator / (const sc_unsigned& u, const sc_int_base& v); friend sc_unsigned operator / (const sc_uint_base& u, const sc_unsigned& v); friend sc_signed operator / (const sc_int_base& u, const sc_unsigned& v); sc_unsigned& operator /= (const sc_int_base& v); sc_unsigned& operator /= (const sc_uint_base& v); // MODulo operators: friend sc_signed operator % (const sc_unsigned& u, const sc_signed& v); friend sc_signed operator % (const sc_signed& u, const sc_unsigned& v); friend sc_unsigned operator % (const sc_unsigned& u, const sc_unsigned& v); friend sc_signed operator % (const sc_unsigned& u, int64 v); friend sc_unsigned operator % (const sc_unsigned& u, uint64 v); friend sc_signed operator % (const sc_unsigned& u, long v); friend sc_unsigned operator % (const sc_unsigned& u, unsigned long v); friend sc_signed operator % (const sc_unsigned& u, int v); friend sc_unsigned operator % (const sc_unsigned& u, unsigned int v) { return operator%(u, (unsigned long) v); } friend sc_signed operator % (int64 u, const sc_unsigned& v); friend sc_unsigned operator % (uint64 u, const sc_unsigned& v); friend sc_signed operator % (long u, const sc_unsigned& v); friend sc_unsigned operator % (unsigned long u, const sc_unsigned& v); friend sc_signed operator % (int u, const sc_unsigned& v); friend sc_unsigned operator % (unsigned int u, const sc_unsigned& v) { return operator%((unsigned long) u, v); } sc_unsigned& operator %= (const sc_signed& v); sc_unsigned& operator %= (const sc_unsigned& v); sc_unsigned& operator %= (int64 v); sc_unsigned& operator %= (uint64 v); sc_unsigned& operator %= (long v); sc_unsigned& operator %= (unsigned long v); sc_unsigned& operator %= (int v) { return operator%=((long) v); } sc_unsigned& operator %= (unsigned int v) { return operator%=((unsigned long) v); } friend sc_unsigned operator % (const sc_unsigned& u, const sc_uint_base& v); friend sc_signed operator % (const sc_unsigned& u, const sc_int_base& v); friend sc_unsigned operator % (const sc_uint_base& u, const sc_unsigned& v); friend sc_signed operator % (const sc_int_base& u, const sc_unsigned& v); sc_unsigned& operator %= (const sc_int_base& v); sc_unsigned& operator %= (const sc_uint_base& v); // BITWISE OPERATORS: // Bitwise AND operators: friend sc_signed operator & (const sc_unsigned& u, const sc_signed& v); friend sc_signed operator & (const sc_signed& u, const sc_unsigned& v); friend sc_unsigned operator & (const sc_unsigned& u, const sc_unsigned& v); friend sc_signed operator & (const sc_unsigned& u, int64 v); friend sc_unsigned operator & (const sc_unsigned& u, uint64 v); friend sc_signed operator & (const sc_unsigned& u, long v); friend sc_unsigned operator & (const sc_unsigned& u, unsigned long v); friend sc_signed operator & (const sc_unsigned& u, int v); friend sc_unsigned operator & (const sc_unsigned& u, unsigned int v) { return operator&(u, (unsigned long) v); } friend sc_signed operator & (int64 u, const sc_unsigned& v); friend sc_unsigned operator & (uint64 u, const sc_unsigned& v); friend sc_signed operator & (long u, const sc_unsigned& v); friend sc_unsigned operator & (unsigned long u, const sc_unsigned& v); friend sc_signed operator & (int u, const sc_unsigned& v); friend sc_unsigned operator & (unsigned int u, const sc_unsigned& v) { return operator&((unsigned long) u, v); } sc_unsigned& operator &= (const sc_signed& v); sc_unsigned& operator &= (const sc_unsigned& v); sc_unsigned& operator &= (int64 v); sc_unsigned& operator &= (uint64 v); sc_unsigned& operator &= (long v); sc_unsigned& operator &= (unsigned long v); sc_unsigned& operator &= (int v) { return operator&=((long) v); } sc_unsigned& operator &= (unsigned int v) { return operator&=((unsigned long) v); } friend sc_unsigned operator & (const sc_unsigned& u, const sc_uint_base& v); friend sc_signed operator & (const sc_unsigned& u, const sc_int_base& v); friend sc_unsigned operator & (const sc_uint_base& u, const sc_unsigned& v); friend sc_signed operator & (const sc_int_base& u, const sc_unsigned& v); sc_unsigned& operator &= (const sc_int_base& v); sc_unsigned& operator &= (const sc_uint_base& v); // Bitwise OR operators: friend sc_signed operator | (const sc_unsigned& u, const sc_signed& v); friend sc_signed operator | (const sc_signed& u, const sc_unsigned& v); friend sc_unsigned operator | (const sc_unsigned& u, const sc_unsigned& v); friend sc_signed operator | (const sc_unsigned& u, int64 v); friend sc_unsigned operator | (const sc_unsigned& u, uint64 v); friend sc_signed operator | (const sc_unsigned& u, long v); friend sc_unsigned operator | (const sc_unsigned& u, unsigned long v); friend sc_signed operator | (const sc_unsigned& u, int v); friend sc_unsigned operator | (const sc_unsigned& u, unsigned int v) { return operator|(u, (unsigned long) v); } friend sc_signed operator | (int64 u, const sc_unsigned& v); friend sc_unsigned operator | (uint64 u, const sc_unsigned& v); friend sc_signed operator | (long u, const sc_unsigned& v); friend sc_unsigned operator | (unsigned long u, const sc_unsigned& v); friend sc_signed operator | (int u, const sc_unsigned& v); friend sc_unsigned operator | (unsigned int u, const sc_unsigned& v) { return operator|((unsigned long) u, v); } sc_unsigned& operator |= (const sc_signed& v); sc_unsigned& operator |= (const sc_unsigned& v); sc_unsigned& operator |= (int64 v); sc_unsigned& operator |= (uint64 v); sc_unsigned& operator |= (long v); sc_unsigned& operator |= (unsigned long v); sc_unsigned& operator |= (int v) { return operator|=((long) v); } sc_unsigned& operator |= (unsigned int v) { return operator|=((unsigned long) v); } friend sc_unsigned operator | (const sc_unsigned& u, const sc_uint_base& v); friend sc_signed operator | (const sc_unsigned& u, const sc_int_base& v); friend sc_unsigned operator | (const sc_uint_base& u, const sc_unsigned& v); friend sc_signed operator | (const sc_int_base& u, const sc_unsigned& v); sc_unsigned& operator |= (const sc_int_base& v); sc_unsigned& operator |= (const sc_uint_base& v); // Bitwise XOR operators: friend sc_signed operator ^ (const sc_unsigned& u, const sc_signed& v); friend sc_signed operator ^ (const sc_signed& u, const sc_unsigned& v); friend sc_unsigned operator ^ (const sc_unsigned& u, const sc_unsigned& v); friend sc_signed operator ^ (const sc_unsigned& u, int64 v); friend sc_unsigned operator ^ (const sc_unsigned& u, uint64 v); friend sc_signed operator ^ (const sc_unsigned& u, long v); friend sc_unsigned operator ^ (const sc_unsigned& u, unsigned long v); friend sc_signed operator ^ (const sc_unsigned& u, int v); friend sc_unsigned operator ^ (const sc_unsigned& u, unsigned int v) { return operator^(u, (unsigned long) v); } friend sc_signed operator ^ (int64 u, const sc_unsigned& v); friend sc_unsigned operator ^ (uint64 u, const sc_unsigned& v); friend sc_signed operator ^ (long u, const sc_unsigned& v); friend sc_unsigned operator ^ (unsigned long u, const sc_unsigned& v); friend sc_signed operator ^ (int u, const sc_unsigned& v); friend sc_unsigned operator ^ (unsigned int u, const sc_unsigned& v) { return operator^((unsigned long) u, v); } sc_unsigned& operator ^= (const sc_signed& v); sc_unsigned& operator ^= (const sc_unsigned& v); sc_unsigned& operator ^= (int64 v); sc_unsigned& operator ^= (uint64 v); sc_unsigned& operator ^= (long v); sc_unsigned& operator ^= (unsigned long v); sc_unsigned& operator ^= (int v) { return operator^=((long) v); } sc_unsigned& operator ^= (unsigned int v) { return operator^=((unsigned long) v); } friend sc_unsigned operator ^ (const sc_unsigned& u, const sc_uint_base& v); friend sc_signed operator ^ (const sc_unsigned& u, const sc_int_base& v); friend sc_unsigned operator ^ (const sc_uint_base& u, const sc_unsigned& v); friend sc_signed operator ^ (const sc_int_base& u, const sc_unsigned& v); sc_unsigned& operator ^= (const sc_int_base& v); sc_unsigned& operator ^= (const sc_uint_base& v); // SHIFT OPERATORS: // LEFT SHIFT operators: friend sc_unsigned operator << (const sc_unsigned& u, const sc_signed& v); friend sc_signed operator << (const sc_signed& u, const sc_unsigned& v); friend sc_unsigned operator << (const sc_unsigned& u, const sc_unsigned& v); friend sc_unsigned operator << (const sc_unsigned& u, int64 v); friend sc_unsigned operator << (const sc_unsigned& u, uint64 v); friend sc_unsigned operator << (const sc_unsigned& u, long v); friend sc_unsigned operator << (const sc_unsigned& u, unsigned long v); friend sc_unsigned operator << (const sc_unsigned& u, int v) { return operator<<(u, (long) v); } friend sc_unsigned operator << (const sc_unsigned& u, unsigned int v) { return operator<<(u, (unsigned long) v); } sc_unsigned& operator <<= (const sc_signed& v); sc_unsigned& operator <<= (const sc_unsigned& v); sc_unsigned& operator <<= (int64 v); sc_unsigned& operator <<= (uint64 v); sc_unsigned& operator <<= (long v); sc_unsigned& operator <<= (unsigned long v); sc_unsigned& operator <<= (int v) { return operator<<=((long) v); } sc_unsigned& operator <<= (unsigned int v) { return operator<<=((unsigned long) v); } friend sc_unsigned operator << (const sc_unsigned& u, const sc_uint_base& v); friend sc_unsigned operator << (const sc_unsigned& u, const sc_int_base& v); sc_unsigned& operator <<= (const sc_int_base& v); sc_unsigned& operator <<= (const sc_uint_base& v); // RIGHT SHIFT operators: friend sc_unsigned operator >> (const sc_unsigned& u, const sc_signed& v); friend sc_signed operator >> (const sc_signed& u, const sc_unsigned& v); friend sc_unsigned operator >> (const sc_unsigned& u, const sc_unsigned& v); friend sc_unsigned operator >> (const sc_unsigned& u, int64 v); friend sc_unsigned operator >> (const sc_unsigned& u, uint64 v); friend sc_unsigned operator >> (const sc_unsigned& u, long v); friend sc_unsigned operator >> (const sc_unsigned& u, unsigned long v); friend sc_unsigned operator >> (const sc_unsigned& u, int v) { return operator>>(u, (long) v); } friend sc_unsigned operator >> (const sc_unsigned& u, unsigned int v) { return operator>>(u, (unsigned long) v); } sc_unsigned& operator >>= (const sc_signed& v); sc_unsigned& operator >>= (const sc_unsigned& v); sc_unsigned& operator >>= (int64 v); sc_unsigned& operator >>= (uint64 v); sc_unsigned& operator >>= (long v); sc_unsigned& operator >>= (unsigned long v); sc_unsigned& operator >>= (int v) { return operator>>=((long) v); } sc_unsigned& operator >>= (unsigned int v) { return operator>>=((unsigned long) v); } friend sc_unsigned operator >> ( const sc_unsigned& , const sc_uint_base& ); friend sc_unsigned operator >> ( const sc_unsigned&, const sc_int_base& ); sc_unsigned& operator >>= (const sc_int_base& v); sc_unsigned& operator >>= (const sc_uint_base& v); // Unary arithmetic operators friend sc_unsigned operator + (const sc_unsigned& u); friend sc_signed operator - (const sc_unsigned& u); // LOGICAL OPERATORS: // Logical EQUAL operators: friend bool operator == (const sc_unsigned& u, const sc_signed& v); friend bool operator == (const sc_signed& u, const sc_unsigned& v); friend bool operator == (const sc_unsigned& u, const sc_unsigned& v); friend bool operator == (const sc_unsigned& u, int64 v); friend bool operator == (const sc_unsigned& u, uint64 v); friend bool operator == (const sc_unsigned& u, long v); friend bool operator == (const sc_unsigned& u, unsigned long v); friend bool operator == (const sc_unsigned& u, int v) { return operator==(u, (long) v); } friend bool operator == (const sc_unsigned& u, unsigned int v) { return operator==(u, (unsigned long) v); } friend bool operator == (int64 u, const sc_unsigned& v); friend bool operator == (uint64 u, const sc_unsigned& v); friend bool operator == (long u, const sc_unsigned& v); friend bool operator == (unsigned long u, const sc_unsigned& v); friend bool operator == (int u, const sc_unsigned& v) { return operator==((long) u, v); } friend bool operator == (unsigned int u, const sc_unsigned& v) { return operator==((unsigned long) u, v); } friend bool operator == (const sc_unsigned& u, const sc_uint_base& v); friend bool operator == (const sc_unsigned& u, const sc_int_base& v); friend bool operator == (const sc_uint_base& u, const sc_unsigned& v); friend bool operator == (const sc_int_base& u, const sc_unsigned& v); // Logical NOT_EQUAL operators: friend bool operator != (const sc_unsigned& u, const sc_signed& v); friend bool operator != (const sc_signed& u, const sc_unsigned& v); friend bool operator != (const sc_unsigned& u, const sc_unsigned& v); friend bool operator != (const sc_unsigned& u, int64 v); friend bool operator != (const sc_unsigned& u, uint64 v); friend bool operator != (const sc_unsigned& u, long v); friend bool operator != (const sc_unsigned& u, unsigned long v); friend bool operator != (const sc_unsigned& u, int v) { return operator!=(u, (long) v); } friend bool operator != (const sc_unsigned& u, unsigned int v) { return operator!=(u, (unsigned long) v); } friend bool operator != (int64 u, const sc_unsigned& v); friend bool operator != (uint64 u, const sc_unsigned& v); friend bool operator != (long u, const sc_unsigned& v); friend bool operator != (unsigned long u, const sc_unsigned& v); friend bool operator != (int u, const sc_unsigned& v) { return operator!=((long) u, v); } friend bool operator != (unsigned int u, const sc_unsigned& v) { return operator!=((unsigned long) u, v); } friend bool operator != (const sc_unsigned& u, const sc_uint_base& v); friend bool operator != (const sc_unsigned& u, const sc_int_base& v); friend bool operator != (const sc_uint_base& u, const sc_unsigned& v); friend bool operator != (const sc_int_base& u, const sc_unsigned& v); // Logical LESS_THAN operators: friend bool operator < (const sc_unsigned& u, const sc_signed& v); friend bool operator < (const sc_signed& u, const sc_unsigned& v); friend bool operator < (const sc_unsigned& u, const sc_unsigned& v); friend bool operator < (const sc_unsigned& u, int64 v); friend bool operator < (const sc_unsigned& u, uint64 v); friend bool operator < (const sc_unsigned& u, long v); friend bool operator < (const sc_unsigned& u, unsigned long v); friend bool operator < (const sc_unsigned& u, int v) { return operator<(u, (long) v); } friend bool operator < (const sc_unsigned& u, unsigned int v) { return operator<(u, (unsigned long) v); } friend bool operator < (int64 u, const sc_unsigned& v); friend bool operator < (uint64 u, const sc_unsigned& v); friend bool operator < (long u, const sc_unsigned& v); friend bool operator < (unsigned long u, const sc_unsigned& v); friend bool operator < (int u, const sc_unsigned& v) { return operator<((long) u, v); } friend bool operator < (unsigned int u, const sc_unsigned& v) { return operator<((unsigned long) u, v); } friend bool operator < (const sc_unsigned& u, const sc_uint_base& v); friend bool operator < (const sc_unsigned& u, const sc_int_base& v); friend bool operator < (const sc_uint_base& u, const sc_unsigned& v); friend bool operator < (const sc_int_base& u, const sc_unsigned& v); // Logical LESS_THAN_AND_EQUAL operators: friend bool operator <= (const sc_unsigned& u, const sc_signed& v); friend bool operator <= (const sc_signed& u, const sc_unsigned& v); friend bool operator <= (const sc_unsigned& u, const sc_unsigned& v); friend bool operator <= (const sc_unsigned& u, int64 v); friend bool operator <= (const sc_unsigned& u, uint64 v); friend bool operator <= (const sc_unsigned& u, long v); friend bool operator <= (const sc_unsigned& u, unsigned long v); friend bool operator <= (const sc_unsigned& u, int
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?