SystemC Utillity functions : sc_max, sc_min

SystemC-2.2からあります。
2つの値を比較して、それぞれの値を返す関数になります。
※ただし、sc_logic/sc_bitなどのデータ型には使えません。


定義

  • sc_max

template <class T>
const T sc_max( const T& a , const T& b ) { return (( a >= b ) ? a : b ); }

  • sc_min

template <class T>
const T sc_min( const T& a , const T& b ) { return (( a <= b ) ? a : b ); }


実験

  • サンプルコード
  •  1|#include <systemc.h>
     2|
     3|int sc_main(int argc, char* argv[])
     4|{
     5|  sc_int<10> a, b;
     6|  sc_int<10> c_max, c_min;
     7|  a = 10;
     8|  b = -20;
     9|  c_max = sc_max(a,b);
    10|  c_min = sc_min(a,b);
    11|
    12|  cout << "a = " << a.to_string(SC_DEC) << ", b = " << b.to_string(SC_DEC) << endl;
    13|  cout << "sc_max(a, b) = " << c_max.to_string(SC_DEC) << endl;
    14|  cout << "sc_min(a, b) = " << c_min.to_string(SC_DEC) << endl;
    15|
    16|  return 0;
    17|}
  • 実行結果
  •  
                 SystemC 2.3.0-ASI --- Jul 13 2012 06:33:43
            Copyright (c) 1996-2012 by all Contributors,
            ALL RIGHTS RESERVED
    
    a = 10, b = -20
    sc_max(a, b) = 10
    sc_min(a, b) = -20
    
関連記事

コメントの投稿

非公開コメント

プロフィール

Kocha

Author:Kocha
なんでもチャレンジ!(^o^)/
E-mail
github:Kocha
イベントカレンダー

カレンダー
09 | 2017/10 | 11
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 - - - -
カテゴリ
OVP (4)
最新記事
最新コメント
アーカイブ
リンク
Twitter
アクセス人数