"複数のコードデータおよび当該コードデータの夫々を読み出すタイミングデータを有するコード進行データを複数種記憶する記憶手段と、この記憶手段に記憶された複数のコード進行データ夫々から、前記タイミングデータで定められたタイミングで対応するコードデータを読み出す読み出し手段と、外部より複数の音高データを取得する取得手段と、この取得手段の取得のタイミングに応答して、前記読み出し手段にて前記記憶手段から読み出されている、前記複数のコード進行データ夫々に対応するコードデータの中から、前記取得手段により取得された複数の音高データ夫々とのマッチ度が最大のコードデータを選択する選択手段と、この選択手段によりコードデータが選択された後、当該コードデータを有するコード進行データに基づいて読み出されるコードデータを出力する出力手段と、を有するコード出力装置。前記選択手段は、前記取得手段により取得された複数の音高データで表わされる音高夫々が、前記各コード進行データに対応するコードデータで表わされるコードのコード構成音、コードスケール音あるいはそれ以外の音のいずれかを識別する識別手段と、この識別手段による識別結果がコード構成音である場合、コードスケール音である場合、それ以外の音である場合の順で、前記音高と前記コードデータとのマッチ度を大きく判定する判定手段と、を有する請求項1記載のコード出力装置。複数のコードデータおよび当該コードデータの夫々を読み出すタイミングデータを有するコード進行データを複数種記憶する記憶手段と、外部より複数の音高データを取得する取得手段と、を有するコンピュータに、この記憶手段に記憶された複数のコード進行データ夫々から、前記タイミングデータで定められたタイミングで対応するコードデータを読み出す読み出しステップと、この取得手段の取得のタイミングに応答して、前記記憶手段から読み出されている、前記複数のコード進行データ夫々に対応するコードデータの中から、前記取得手段により取得された複数の音高データ夫々とのマッチ度が最大のコードデータを選択する選択ステップと、このコードデータが選択された後、当該コードデータを有するコード進行データに基づいて読み出されるコードデータを出力する出力ステップと、を実行させるプログラム。特許文献1に開示された自動伴奏装置では、常に予め定められたコード進行で伴奏が行われるだけであり、その伴奏形態は固定的である。通常、同じ曲を演奏する場合でも、その伴奏形態は演奏者夫々によって様々なバリエーションがあるのが現実であり、特許文献1に開示された構成では、演奏者が意図的に伴奏形態を変えようとしても、変更することが不可能であって、あまりにも面白味がなかった。本発明は、このような状況に鑑みてなされたものであり、演奏者の演奏意図を反映させた様々なバリエーションの伴奏形態を提供できるようにすることを目的とする。上記目的を達成するため、本発明の一態様のコード出力装置は、複数のコードデータおよび当該コードデータの夫々を読み出すタイミングデータを有するコード進行データを複数種記憶する記憶手段と、この記憶手段に記憶された複数のコード進行データ夫々から、前記タイミングデータで定められたタイミングで対応するコードデータを読み出す読み出し手段と、外部より複数の音高データを取得する取得手段と、この取得手段の取得のタイミングに応答して、前記読み出し手段にて前記記憶手段から読み出されている、前記複数のコード進行データ夫々に対応するコードデータの中から、前記取得手段により取得された複数の音高データ夫々とのマッチ度が最大のコードデータを選択する選択手段と、この選択手段によりコードデータが選択された後、当該コードデータを有するコード進行データに基づいて読み出されるコードデータを出力する出力手段と、を有する、ことを特徴とする。本発明によれば、演奏者の演奏意図を反映させた伴奏を行うことが可能となる。以下、添付図面を参照して、本発明の実施形態について説明する。図1は、本実施形態によるコード出力装置1の構成図である。コード出力装置1は、図1に示すように、CPUCentralProcessingUnit101と、ROMReadOnlyMemory102と、RAMRandomAccessMemory103と、スイッチSW群104と、鍵盤演奏操作子群105と、音源106と、発音回路107と、を備えた構成となっている。CPU101は、ROM102に記録されているプログラムに従って各種の処理を実行する。ROM102は、CPU101が実行するプログラム、自動伴奏用の各種コード進行データ、および各種制御用データを格納する。RAM103には、CPU101が各種の処理を実行する上において必要なデータ等も適宜記憶される。スイッチSW群104は、各種スイッチを有する。鍵盤演奏操作子群105は、ユーザーの押鍵により楽曲の音高を順次指定していくものである。音源106は、CPU101の指示に従ってデジタル楽音用波形データを生成し出力する。発音回路107は、音源106が出力する波形データをアナログ波形信号オーディオ信号に変換して、出力する。図2は、ROM102に格納されたコード進行データを示す図である。[コード進行データの構成]図2に示すようにコード進行データは複数あり、コード進行データA図2a、コード進行データB図2b、およびコード進行データC図2cが存在する。コード進行データAを例として説明すると、コード進行データAでは、小節ごとにコードとコードマッチデータが対応している。例えば、1小節目は、コードがCコード構成音はC,E,Gド、ミ、ソであり、2小節目は、コードがAmコード構成音はA,C,Eラ、ド、ミであり、3小節目は、コードがDm7コード構成音はD,F,A,Cレ、ファ、ラ、ド、4小節目は、コードがG7コード構成音はG,B,D,Fソ、シ、レ、ファである。ここで、コードマッチデータについて説明する。コードマッチデータは、12個の音種Cド、C♯ド♯、Dレ、E♭ミ♭、Fファ、F♯ファ♯、Gソ、A♭ラ♭、Aラ、B♭シ♭、Bシごとに数値コードマッチ値を有している。このコードマッチ値は、コード構成音である場合0、コードスケール音である場合1、アザートーンコード構成音でもコードスケール音でもない音である場合2である。コードマッチ値とは、鍵盤105においてユーザーにより押鍵されている複数の音高の夫々がどのくらいコードに対して和声的に類似しているかを示す指標となる値である。そして、押鍵されている複数の音高の夫々のコードマッチ値の合計値が小さいほど、押鍵されている複数の音高がコードに和声的に類似する度合が大きくなる。本実施形態では、この類似の度合いをコードマッチ度と定義する。なお、本実施形態では、ユーザーにより押鍵されている音高の数は複数あるものとして説明する。本実施形態において、コードスケール音とは、現在のスケール調性の構成音のうちコード構成音を除いた音種である。例えば、コードがCの場合、コード構成音はC,E,Gド、ミ、ソであり、これらに対応するコードマッチ値が0となっている。また、コードスケール音は、現在のスケールハ長調の構成音C,D,E,F,G,A,Bド、レ、ミ、ファ、ソ、ラ、シのうち、コード構成音C,E,Gド、ミ、ソを除いたD,F,A,Bレ、ファ、ラ、シであり、これらに対応するコードマッチ値が1となっている。さらに、アザートーンは、上記12個の音種から、コード構成音C,E,Gド、ミ、ソおよびコードスケール音D,F,A,Bレ、ファ、ラ、シを除いたC♯,E♭,F♯,A♭,B♭ド♯,ミ♭,ファ♯,ラ♭,シ♭であり、これらに対応するコードマッチ値が2となっている。その他のコードについても、同様である。以上、コード進行データAについて説明したが、他のコード進行データB,Cについても同様である。なお、コード進行データの種類は、コード進行データA,B,Cに限られず、その他のコード進行データ例えば、コード進行データD,E...などを追加してもよい。[コード進行データによるコード決定方法]さらに、図2を参照して、コード進行データによるコード決定方法について説明する。例えば、ユーザーが2小節目にC,Eド、ミの音を押した場合、コード進行データAの2小節目のコードマッチデータのCに対応するコードマッチ値は0、Eに対応するコードマッチ値は0である。さらにコードマッチ値の総和をとり、コードマッチ値の合計値は、00=0となる。同様に、コードマッチ値の合計値は、コード進行データBでは、10=1となり、コード進行データCでは、01=1となる。次に、コード進行データAの場合に、コードマッチ値の合計値が一番小さな値となるので、コードマッチ度コードに和声的に類似する度合が最大となり、コード進行データAの2小節目のコードであるAmが出力コードとして決定される。他の例では、例えば、ユーザーが2小節目にC,D,Aド、レ、ラの音を押した場合、コード進行データAでのコードマッチ値の合計値は、010=1、コード進行データBでのコードマッチ値の合計値は、110=2、コード進行データCでのコードマッチ値の合計値は、000=0となり、コード進行データCの場合に、コードマッチ値の合計値が一番小さな値となるので、コードマッチ度が最大となり、コード進行データCの2小節目のコードであるD7が出力コードとして決定される。したがって、2小節目において、ユーザーがC,Eド、ミの音からC,D,Aド、レ、ラの音に変更した場合、出力コードがAmからD7に変更される。なお、コードマッチ値の合計値の一番小さいものが複数になる場合があるが、この場合には、コード進行データA,B,Cの順番で優先してコードが出力される。例えば、コードマッチ値の合計値の一番小さなものがコード進行データBとCとから算出された場合、コード進行データBのコードが優先して出力される。また、押鍵が無い場合、コード進行データAのコードが出力される。[全体処理]図3は、本実施形態に係るコード出力装置1において実行される全体処理を示すフローチャートである。まず、ステップS1では、CPU101は、電源の投入によりイニシャライズを行う。ステップS2では、CPU101は、スイッチ処理を行う。スイッチ処理では、CPU101は、発音の音色を指定するスイッチなど、種々のスイッチの操作信号を検出する。ステップS3では、CPU101は、鍵盤処理図4で後述するを行う。ステップS4では、CPU101は、自動伴奏処理図5で後述するを行う。ステップS5では、CPU101は、その他の処理を行う。その他の処理では、CPU101は、例えば、表示部図示せずに出力コードのコード名を表示するなどの処理を行う。[鍵盤処理]図4は、本実施形態に係るコード出力装置1において実行される鍵盤処理を示すフローチャートである。まず、ステップS11では、CPU101は、鍵盤105上の各鍵の走査を行う。具体的には、CPU101は、鍵盤105の1つの鍵の状態を読み込む。ステップS12では、CPU101は、この状態の変化を判断する。CPU101は、押鍵状態になったと判断した場合には、処理をステップS13に移し、押鍵状態から離鍵状態になったと判断した場合には、処理をステップS15に移し、状態の変化が無いと判断した場合には、処理をステップS18に移す。ステップS13では、CPU101は、押鍵状態となった鍵に対応する音高データをRAM103に記憶する。ステップS14では、CPU101は、このRAMに記憶された音高データに基づいてノートオンイベント音高データ以外に押鍵の強さを表すベロシティなどの発音情報を含むを作成して、ステップS17に処理を移す。ステップS15では、CPU101は、離鍵状態となった鍵の音高データをRAM103から消去する。ステップS16では、CPU101は、離鍵状態となった鍵盤の音高データについてノートオフイベント対応する音高の楽音の発音を停止するための消音情報を作成して、ステップS17に処理を移す。ステップS17では、CPU101は、ステップS14で作成されたノートオンイベントまたはステップS16で作成されたノートオフイベントを音源106に供給する。ステップS18では、CPU101は、鍵盤全体の走査が終了したか否かを判断する。具体的には、CPU101は、ステップS11において未走査の鍵がないかを判断する。未走査の鍵がない場合、走査が終了したと判断し、ステップS19に処理を移す。未走査の鍵がある場合、走査が終了していないと判断し、ステップS11に処理を戻す。ステップS19では、CPU101は、コードデータを読み出す。具体的には、CPU101は、タイマ図示せずから現時点で何小節目であるかを示すタイミング情報を取得し、取得したタイミング情報に基づいて、ROM102に記憶されたコード進行データA,B,C図2参照の夫々から、現時点の小節に対応するコード名およびコードマッチデータを読み出す。例えば、タイミング情報が現時点で2小節目を示している場合、コード進行データAからコード名Amおよびコードマッチデータ0,2,1,2,0,1,2,1,2,0,2,1を読み出し、コード進行データBから、コード名A7およびコードマッチデータ1,0,1,2,0,1,2,0,2,0,2,1を読み出し、コード進行データCから、コード名D7およびコードマッチデータ0,2,0,2,1,2,0,1,2,0,2,1を読み出す。CPU101は、ステップS20では、コードマッチ値の合計値を算出し、ステップS21では、コードを決定する。コードマッチ値の合計値の算出方法およびコード決定方法については、図2の説明で上述したとおりであり、例えば、ユーザーが2小節目にC,Eド、ミの音を押した場合、すなわちステップS13で記憶された音高データが、C,Eの音高データである場合、CPU101は、コード進行データAの2小節目のコードマッチデータのCに対応するコードマッチ値を0と識別し、Eに対応するコードマッチ値を0と識別する。そして、CPU101は、コード進行データAのコードマッチ値の合計値を00=0と算出する。同様に、コード進行データBのコードマッチ値の合計値を10=1、コード進行データCのコードマッチ値の合計値を01=1と算出するステップS20。次に、CPU101は、算出された、コードマッチ値の合計値のうち一番小さな値を導出したコード進行データとしてコード進行データAを決定し、コード進行データAの2小節目のコードであるAmを出力コードとして決定するステップS21。なお、コードマッチ値の合計値の一番小さいものが複数ある場合には、CPU101は、コード進行データA,B,Cの順番で優先してコードを出力する。例えば、コードマッチ値の合計値の一番小さなものがコード進行データBとCとから算出された場合、CPU101は、コード進行データBのコードを優先して出力する。また、押鍵が無い場合、CPU101は、コード進行データAのコードを出力する。ステップS21の処理が終了すると、CPU101は、鍵盤処理を終了する。[自動伴奏処理]図5は、本実施形態に係るコード出力装置1において実行される自動伴奏処理を示すフローチャートである。まず、ステップS31では、CPU101は、ROM102から伴奏データを読み出す。具体的には、CPU101は、伴奏データとして指定されている伴奏用シーケンスパターンデータを読み出す。ステップS32では、CPU101は、決定コードに基づいてノートオンイベントを作成する。具体的には、CPU101は、ステップS21で決定されたコードに応じた音高データ、ステップS31で読み出した伴奏用シーケンスパターンデータなどに基づいてノートオンイベントを作成する。ステップS33では、CPU101は、ステップS32で作成したノートオンイベントを音源106に供給して、自動伴奏処理を終了する。本実施形態においては、CPU101は、複数の音高データの取得のタイミング取得時点が属する小節に応答して、コード進行データA,B,Cの夫々に対応するコードデータの中から、取得した複数の音高データ夫々とのマッチ度が最大のコードデータ取得した複数の音高データ夫々のコードマッチ値の合計値が最小のコードデータを選択し出力する。したがって、演奏者の押鍵状態に応じて伴奏コードを適切に出力することができる。例えば、2小節目において、ユーザーがC,Eド、ミの音からC,D,Aド、レ、ラの音に変更した場合、出力コードをAmからD7に変更することができる。また、本実施形態においては、CPU101は、取得した複数の音高データの夫々が、コード構成音である場合、コードスケール音である場合、それ以外の音アザートーンである場合の順で、音高とコードデータとのマッチ度を大きくコードデータに対する音高のコードマッチ値を小さく判定する。したがって、音高がコード構成音であれば、コードマッチ値を最小にでき、音高がコードスケール音であれば、コードマッチ値をある程度小さくでき、アザートーンであれば、コードマッチ値を大きくできる。よって、コードマッチ値の合計値であるコードマッチ度を適切に判定することができ、適切なコードを選択して伴奏することができる。以上、本発明のいくつかの実施形態について説明したが、これらの実施形態は、例示に過ぎず、本発明の技術的範囲を限定するものではない。本発明はその他の様々な実施形態を取ることが可能であり、さらに、本発明の要旨を逸脱しない範囲で、省略や置換等種々の変更を行うことができる。これら実施形態やその変形は、本明細書等に記載された発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。以下に、本願の出願当初の特許請求の範囲に記載された発明を付記する。[付記1]複数のコードデータおよび当該コードデータの夫々を読み出すタイミングデータを有するコード進行データを複数種記憶する記憶手段と、この記憶手段に記憶された複数のコード進行データ夫々から、前記タイミングデータで定められたタイミングで対応するコードデータを読み出す読み出し手段と、外部より複数の音高データを取得する取得手段と、この取得手段の取得のタイミングに応答して、前記読み出し手段にて前記記憶手段から読み出されている、前記複数のコード進行データ夫々に対応するコードデータの中から、前記取得手段により取得された複数の音高データ夫々とのマッチ度が最大のコードデータを選択する選択手段と、この選択手段によりコードデータが選択された後、当該コードデータを有するコード進行データに基づいて読み出されるコードデータを出力する出力手段と、を有するコード出力装置。[付記2]前記選択手段は、前記取得手段により取得された複数の音高データで表わされる音高夫々が、前記各コード進行データに対応するコードデータで表わされるコードのコード構成音、コードスケール音あるいはそれ以外の音のいずれかを識別する識別手段と、この識別手段による識別結果がコード構成音である場合、コードスケール音である場合、それ以外の音である場合の順で、前記音高と前記コードデータとのマッチ度を大きく判定する判定手段と、を有する付記1記載のコード出力装置。[付記3]複数のコードデータおよび当該コードデータの夫々を読み出すタイミングデータを有するコード進行データを複数種記憶する記憶手段と、外部より複数の音高データを取得する取得手段と、を有するコンピュータに、この記憶手段に記憶された複数のコード進行データ夫々から、前記タイミングデータで定められたタイミングで対応するコードデータを読み出す読み出しステップと、この取得手段の取得のタイミングに応答して、前記記憶手段から読み出されている、前記複数のコード進行データ夫々に対応するコードデータの中から、前記取得手段により取得された複数の音高データ夫々とのマッチ度が最大のコードデータを選択する選択ステップと、このコードデータが選択された後、当該コードデータを有するコード進行データに基づいて読み出されるコードデータを出力する出力ステップと、を実行させるプログラム。"