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 + -
显示快捷键?