(57)【要約】【課題】この発明は、携帯可能電子装置における加算あるいは減算した結果の値が各々上限値あるいは下限値に近づいたことを、外部装置側で知ることができる。【解決手段】この発明は、携帯可能電子装置において、メモリ内の値を特定の値だけ加算あるいは減算させるコマンドが入力された場合、加算あるいは減算した結果の値が各々上限値あるいは下限値を超えたときは、加算または減算処理は行なわずエラー情報を出力し、また、加算あるいは減算した結果の値が各々上限値よりある値だけ小さい値（上限警告値）を超えたときあるいは下限値よりある値だけ大きい値（下限警告値）を下回ったときは、加算あるいは減算処理を実行しかつ警告情報を出力するようにしたものである。【選択図】    図１
2005173935.tif 000002
【特許請求の範囲】
【請求項１】
数値データが記憶されるメモリを有し、外部機器から供給されるコマンドに基づいて数値データの演算処理を実行し、上記演算処理による演算値が限度値を超える際に、エラーステータスを出力する携帯可能電子装置において、
上記外部機器からの演算データを有する演算コマンドを受信する受信手段と、
上記メモリに記憶されている数値データと上記受信手段により受信した演算コマンド内の演算データとによる演算値が限度値に達したか否かを判断する第１の判断手段と、
この第１の判断手段により、演算値が限度値に達したと判断した際に、上記演算コマンドが供給される外部機器へエラーステータスを送信する第１の送信手段と、
上記第１の判断手段による演算値が、限度値に達していないと判断した際に、上記メモリに記憶されている数値データと上記受信手段により受信した演算コマンド内の演算データとによる演算値が限度値の手前の限度警告値に達したか否かを判断する第２の判断手段と、
この第２の判断手段により、演算値が限度警告値に達した際に、上記演算コマンドが供給される外部機器へ警告ステータスを送信する第２の送信手段と、
上記第１の判断手段による演算値が、限度値に達していないと判断した際に、上記メモリに記憶されている数値データから上記受信手段により受信した演算コマンド内の演算データによる演算値を新たな数値データとして上記メモリに更新記憶する記憶手段と、
この記憶手段による記憶後、正常終了を示すステータスを上記外部機器へ送信する第３の送信手段と、
を具備したことを特徴とする携帯可能電子装置。
【請求項２】
上記演算処理が減算処理あるいは加算処理であり、上記演算値が減算値あるいは加算値であり、上記限度値が下限値あるいは上限値であり、上記限度警告値が減算警告値あるいは加算警告値であることを特徴とする請求項１に記載の携帯可能電子装置。
【請求項３】
上記限度値、限度警告値が上記外部機器からの演算コマンドにより設定する設定手段を有することを特徴とする請求項１に記載の携帯可能電子装置。
【請求項４】
端末と、この端末と電気的に接続され、数値データが記憶されるメモリを有し、上記端末から供給されるコマンドに基づいて数値データの演算処理を実行する携帯可能電子装置とからなる携帯可能電子装置処理しシステムにおいて、
上記端末が、
演算データを有する演算コマンドを送信する第１の送信手段と、
この第１の送信手段の送信に応答して、上記携帯可能電子装置から供給される正常ステータス、エラーステータスに基づいて、演算コマンドに基づく処理が正常に行われたか否かを判断する第１の判断手段と、
この第１の送信手段の送信に応答して、上記携帯可能電子装置から供給される警告ステータスに基づいて、演算コマンドに基づく処理により数値データが限度値に近づいたことを報知する報知手段からなり、
上記携帯可能電子装置が、
上記端末からの演算データを有する演算コマンドを受信する受信手段と、
上記メモリに記憶されている数値データと上記受信手段により受信した演算コマンド内の演算データとによる演算値が限度値に達したか否かを判断する第２の判断手段と、
この第２の判断手段により、演算値が限度値に達したと判断した際に、上記演算コマンドが供給される上記端末へエラーステータスを送信する第２の送信手段と、
上記第２の判断手段による演算値が、限度値に達していないと判断した際に、上記メモリに記憶されている数値データと上記受信手段により受信した演算コマンド内の演算データとによる演算値が限度値の手前の限度警告値に達したか否かを判断する第３の判断手段と、
この第３の判断手段により、演算値が限度警告値に達した際に、上記演算コマンドが供給される上記端末へ警告ステータスを送信する第３の送信手段と、
上記第２の判断手段による演算値が、限度値に達していないと判断した際に、上記メモリに記憶されている数値データから上記受信手段により受信した演算コマンド内の演算データによる演算値を新たな数値データとして上記メモリに更新記憶する記憶手段と、
この記憶手段による記憶後、正常終了を示す正常ステータスを上記端末へ送信する第４の送信手段とからなる
ことを特徴とする携帯可能電子装置処理システム。
【請求項５】
数値データが記憶されるメモリを有し、外部機器から供給されるコマンドに基づいて数値データの演算処理を実行し、上記演算処理による演算値が限度値を超える際に、エラーステータスを出力する携帯可能電子装置の演算処理方法において、
上記外部機器からの演算データを有する演算コマンドを受信し、
上記メモリに記憶されている数値データと上記受信した演算コマンド内の演算データとによる演算値が限度値に達したか否かを判断し、
この判断により、演算値が限度値に達したと判断した際に、上記演算コマンドが供給される外部機器へエラーステータスを送信し、
上記判断による演算値が、限度値に達していないと判断した際に、上記メモリに記憶されている数値データと上記受信した演算コマンド内の演算データとによる演算値が限度値の手前の限度警告値に達したか否かを判断し、
この判断により、演算値が限度警告値に達した際に、上記演算コマンドが供給される外部機器へ警告ステータスを送信し、
上記判断による演算値が、限度値に達していないと判断した際に、上記メモリに記憶されている数値データから上記受信した演算コマンド内の演算データによる演算値を新たな数値データとして上記メモリに更新記憶し、
この記憶後、正常終了を示すステータスを上記外部機器へ送信する、
ことを特徴とする携帯可能電子装置の演算処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、書き換えが可能なメモリと、このメモリに対してデータの読み出しまたは書き込みを行うための制御部を有し、選択的に外部からのデータの入出力を行う携帯可能電子装置と携帯可能電子装置処理システムと携帯可能電子装置の演算処理方法に関する。
【背景技術】
【０００２】
従来、書き換えが可能なメモリ（不揮発性メモリ）と、このメモリに対してデータの読み出しまたは書き込みを行うための制御部を有し、選択的に外部からのデータの入出力を行う携帯可能電子装置としてのＩＣカードが実用化されている。
このＩＣカードを扱うシステムとして、パソコン（ＰＣ、上位制御部）とこのＰＣと通信ラインを介して接続されているリーダライタとからなり、このリーダライタにＩＣカードが装着されるようになっているＩＣカード処理システムが実用化されている。
【０００３】
このようなシステムでは、加算を行うコマンドとしてＩＮＣＲＥＡＳＥコマンドが利用され、減算を行うコマンドとしてＤＥＣＲＥＡＳＥコマンドが利用されている（非特許文献１参照）。  
このため、ＩＣカードにおいて、特定の値だけ加算あるいは減算させるコマンドを使用したとき、上限値あるいは下限値を超えた際にはエラーステータスがＩＣカードから戻り当コマンドが実行されない、すなわち加算あるいは減算処理がという問題があった。
【非特許文献１】「ＥＴＳＩ  ＴＳ  １０２．２２１  Ｖ４．６．０（２００２−０５）」
【発明の開示】
【発明が解決しようとする課題】
【０００４】
この発明は、上記の問題を解決するためになされたものであり、メモリ内の数値データを演算して、この演算結果を新たな数値データとして更新記憶するものにおいて、演算限度値に到達してエラーが発生する前に、演算限度値に近づいてきていることを知らせることができ、演算処理が前触れなしにエラーが発生することを避けることができる携帯可能電子装置と携帯可能電子装置処理システムと携帯可能電子装置の演算処理方法を提供することを目的とする。
【課題を解決するための手段】
【０００５】
この発明の携帯可能電子装置は、数値データが記憶されるメモリを有し、外部機器から供給されるコマンドに基づいて数値データの演算処理を実行し、上記演算処理による演算値が限度値を超える際に、エラーステータスを出力するものにおいて、上記外部機器からの演算データを有する演算コマンドを受信する受信手段と、上記メモリに記憶されている数値データと上記受信手段により受信した演算コマンド内の演算データとによる演算値が限度値に達したか否かを判断する第１の判断手段と、この第１の判断手段により、演算値が限度値に達したと判断した際に、上記演算コマンドが供給される外部機器へエラーステータスを送信する第１の送信手段と、上記第１の判断手段による演算値が、限度値に達していないと判断した際に、上記メモリに記憶されている数値データと上記受信手段により受信した演算コマンド内の演算データとによる演算値が限度値の手前の限度警告値に達したか否かを判断する第２の判断手段と、この第２の判断手段により、演算値が限度警告値に達した際に、上記演算コマンドが供給される外部機器へ警告ステータスを送信する第２の送信手段と、上記第１の判断手段による演算値が、限度値に達していないと判断した際に、上記メモリに記憶されている数値データから上記受信手段により受信した演算コマンド内の演算データによる演算値を新たな数値データとして上記メモリに更新記憶する記憶手段と、この記憶手段による記憶後、正常終了を示すステータスを上記外部機器へ送信する第３の送信手段とを有する。
【０００６】
この発明の携帯可能電子装置処理システムは、端末と、この端末と電気的に接続され、数値データが記憶されるメモリを有し、上記端末から供給されるコマンドに基づいて数値データの演算処理を実行する携帯可能電子装置とからなるものにおいて、上記端末が、演算データを有する演算コマンドを送信する第１の送信手段と、この第１の送信手段の送信に応答して、上記携帯可能電子装置から供給される正常ステータス、エラーステータスに基づいて、演算コマンドに基づく処理が正常に行われたか否かを判断する第１の判断手段と、この第１の送信手段の送信に応答して、上記携帯可能電子装置から供給される警告ステータスに基づいて、演算コマンドに基づく処理により数値データが限度値に近づいたことを報知する報知手段からなり、上記携帯可能電子装置が、上記端末からの演算データを有する演算コマンドを受信する受信手段と、上記メモリに記憶されている数値データと上記受信手段により受信した演算コマンド内の演算データとによる演算値が限度値に達したか否かを判断する第２の判断手段と、この第２の判断手段により、演算値が限度値に達したと判断した際に、上記演算コマンドが供給される上記端末へエラーステータスを送信する第２の送信手段と、上記第２の判断手段による演算値が、限度値に達していないと判断した際に、上記メモリに記憶されている数値データと上記受信手段により受信した演算コマンド内の演算データとによる演算値が限度値の手前の限度警告値に達したか否かを判断する第３の判断手段と、この第３の判断手段により、演算値が限度警告値に達した際に、上記演算コマンドが供給される上記端末へ警告ステータスを送信する第３の送信手段と、上記第２の判断手段による演算値が、限度値に達していないと判断した際に、上記メモリに記憶されている数値データから上記受信手段により受信した演算コマンド内の演算データによる演算値を新たな数値データとして上記メモリに更新記憶する記憶手段と、この記憶手段による記憶後、正常終了を示す正常ステータスを上記端末へ送信する第４の送信手段とからなる。
【０００７】
この発明の携帯可能電子装置は、数値データが記憶されるメモリを有し、外部機器から供給されるコマンドに基づいて数値データの演算処理を実行し、上記演算処理による演算値が限度値を超える際に、エラーステータスを出力するものにおいて、上記外部機器からの演算データを有する演算コマンドを受信する受信手段と、上記メモリに記憶されている数値データと上記受信手段により受信した演算コマンド内の演算データとによる演算値が限度値に達したか否かを判断する第１の判断手段と、この第１の判断手段により、演算値が限度値に達したと判断した際に、上記演算コマンドが供給される外部機器へエラーステータスを送信する第１の送信手段と、上記第１の判断手段による演算値が、限度値に達していないと判断した際に、上記メモリに記憶されている数値データと上記受信手段により受信した演算コマンド内の演算データとによる演算値が限度値の手前の限度警告値に達したか否かを判断する第２の判断手段と、この第２の判断手段により、演算値が限度警告値に達した際に、上記演算コマンドが供給される外部機器へ警告ステータスを送信する第２の送信手段と、上記第１の判断手段による演算値が、限度値に達していないと判断した際に、上記メモリに記憶されている数値データから上記受信手段により受信した演算コマンド内の演算データによる演算値を新たな数値データとして上記メモリに更新記憶する記憶手段と、この記憶手段による記憶後、正常終了を示すステータスを上記外部機器へ送信する第３の送信手段とを有する。
【０００８】
この発明の携帯可能電子装置処理システムは、端末と、この端末と電気的に接続され、数値データが記憶されるメモリを有し、上記端末から供給されるコマンドに基づいて数値データの演算処理を実行する携帯可能電子装置とからなるものにおいて、上記端末が、演算データを有する演算コマンドを送信する第１の送信手段と、この第１の送信手段の送信に応答して、上記携帯可能電子装置から供給される正常ステータス、エラーステータスに基づいて、演算コマンドに基づく処理が正常に行われたか否かを判断する第１の判断手段と、この第１の送信手段の送信に応答して、上記携帯可能電子装置から供給される警告ステータスに基づいて、演算コマンドに基づく処理により数値データが限度値に近づいたことを報知する報知手段からなり、上記携帯可能電子装置が、上記端末からの演算データを有する演算コマンドを受信する受信手段と、上記メモリに記憶されている数値データと上記受信手段により受信した演算コマンド内の演算データとによる演算値が限度値に達したか否かを判断する第２の判断手段と、この第２の判断手段により、演算値が限度値に達したと判断した際に、上記演算コマンドが供給される上記端末へエラーステータスを送信する第２の送信手段と、上記第２の判断手段による演算値が、限度値に達していないと判断した際に、上記メモリに記憶されている数値データと上記受信手段により受信した演算コマンド内の演算データとによる演算値が限度値の手前の限度警告値に達したか否かを判断する第３の判断手段と、この第３の判断手段により、演算値が限度警告値に達した際に、上記演算コマンドが供給される上記端末へ警告ステータスを送信する第３の送信手段と、上記第２の判断手段による演算値が、限度値に達していないと判断した際に、上記メモリに記憶されている数値データから上記受信手段により受信した演算コマンド内の演算データによる演算値を新たな数値データとして上記メモリに更新記憶する記憶手段と、この記憶手段による記憶後、正常終了を示す正常ステータスを上記端末へ送信する第４の送信手段とからなる。
【発明の効果】
【０００９】
以上詳述したように、この発明によれば、メモリ内の数値データを演算して、この演算結果を新たな数値データとして更新記憶するものにおいて、演算限度値に到達してエラーが発生する前に、演算限度値に近づいてきていることを知らせることができ、演算処理が前触れなしにエラーが発生することを避けることができる携帯可能電子装置と携帯可能電子装置処理システムと携帯可能電子装置の演算処理方法を提供できる。
【発明を実施するための最良の形態】
【００１０】
以下、図面を参照してこの発明の実施形態として携帯可能電子装置処理システム（ＩＣカード処理システム）を説明する。  
このＩＣカード処理システムは、図１に示すように、上位装置としてのパソコン（ＰＣ）１とこのＰＣ１と通信ライン２を介して接続されているリーダライタ３とからなる。このリーダライタ３には、図示しないコネクタ等で接続される取引対象カードとしてのＩＣカード４が装着されるようになっている。
【００１１】
ＰＣ１は、ＰＣ１の全体を制御する制御部５、制御用のプログラムが記憶されていたり種々のデータが記憶されるメモリ６、操作指示を行うキーボード等の操作部７、操作案内等が表示される表示部８、処理内容等をプリントするプリンタＰ、リーダライタ３とのデータのやり取りを行うインターフェース９により構成されている。
【００１２】
リーダライタ３は、リーダライタ３の全体を制御するＣＰＵ１０、制御用のプログラムが記憶されていたり種々のデータが記憶されるメモリ１１、ＰＣ１とのデータのやり取りを行うインターフェース１２、ＩＣカード４とのデータのやり取りを行うインターフェース１３により構成されている。また、リーダライタ３には、ＩＣカード４の挿入検知を行う検知器（図示しない）を有し、この検知結果をＰＣ１へ出力するようになっている。
【００１３】
ＩＣカード４の機能ブロック図を図２に示す。図示するようにＲ／Ｗ部４ａ、暗証設定／照合部４ｂ、暗号化／復号化部４ｃ等の基本機能を実行する部分と、これらの基本機能を管理するスーパーバイザ部４ｄとで構成されている。スーパーバイザ部４ｄは、カードリーダ／ライタ３から入力されたコマンド電文に含まれる、機能コードもしくはデータの付加された機能コードを解釈し、実行させるものである。
【００１４】
ＩＣカード４は、図３に示すように、ＩＣカード４の全体を制御するＣＰＵ（制御素子）１４、カード内部動作の制御用のプログラムが記憶されているマスクＲＯＭ（プログラムメモリ）１５、外部（リーダライタ３）と交換する電文の送受信バッファとＣＰＵ１４の処理中のデータの一時格納バッファとして利用されるＲＡＭ（ワーキングメモリ、揮発性メモリ）１６、アプリケーション運用でその内容をリードライトして使用される運用データが格納されるデータメモリ（不揮発性メモリ；ＥＥＰＲＯＭ）１７、リーダライタ３とのデータのやり取りを行うインターフェース１８、コンタクト部１９により構成されている。ＲＯＭ（プログラムメモリ）１５は、３０Ｋから４０Ｋバイトで構成されている。個別アプリケーションプログラムとしては、一例として、銀行取引業務処理、クレジット取引業務処理、プリペイド取引業務処理となっている。
【００１５】
上記ＩＣカード４は、比較的低速のシリアル・インターフェースを介して外部から命令を受けたり命令に対する応答を返すものであり、その速度は一般的な接触型ＩＣカードで通常、毎秒９６００ビットとなっている。  
上記ＣＰＵ１４、ＲＯＭ１５、ＲＡＭ１６、データメモリ１７、インターフェース１８は、ＩＣチップ２０により構成され、コンタクト部１９およびＩＣチップ２０は一体的にモジュール化され、ＩＣカード本体に埋設されている。
【００１６】
上記データメモリ１７内に格納するデータは、図４に示す様なファイルのツリー構造イメージで管理される。すなわち、ＩＣカード製造者により書き込まれる製造者領域と、通常、ＭＦ（マスターファイル）および１つあるいは複数のＤＦ（アプリケーションファイル）と、ＭＦおよび各ＤＦの下に存在する１つあるいは複数のデータＥＦ（エレメンタリファイル、ディジネテッドファイル）およびキーＥＦから構成され、階層構造で記憶されている。ＤＦと各ＥＦは、ＥＦ種別、ＥＦサイズ、ＤＦ名、アクセス条件等の情報が含まれるＤＦ、ＥＦ定義情報領域と、データやキー自身が格納されるデータ領域に分かれる。
【００１７】
リーダライタ３から供給され、ＩＣカード４に入力される各コマンド電文は、図５に示すように命令データ（ＣＬＡ／ＩＮＳ）とパラメータデータ（Ｐ１／Ｐ２／Ｌｃ／Ｄａｔａ／Ｌｅ）で構成されている。ＬｃはＤａｔａの長さ、Ｌｅはレスポンス電文での出力を要求する長さを示している。Ｌｅ、Ｄａｔａ、Ｌｃについては存在しないコマンド電文もある。
【００１８】
コマンド処理を行った結果は、図６に示すように、Ｄａｔａ／Ｓｔａｔｕｓで構成されるレスポンス電文として、ＩＣカード４から出力される。Ｄａｔａについては存在しないレスポンス電文もある。
【００１９】
図７は、加算コマンドのコマンド電文構成を示している。この加算コマンドでは、命令データとパラメータの一部（ＣＬＡ／ＩＮＳ／Ｐ１／Ｐ２＝００／１０／００／００）の固定の値を取るものとする。このときデータメモリ１７内の加減算対象データは暗黙的に特定される。
【００２０】
Ｐ１またはＰ２のパラメータを可変にし、加減算対象データを指定することも可能である。
【００２１】
Ｄａｔａには加算すべき値が入り、ここでは例えばＬｃ＝０２ｈ固定、すなわちＤａｔａの長さは２バイト固定とする。
【００２２】
図８は、減算コマンドのコマンド電文構成を示している。この減算コマンドでは、命令データとパラメータの一部（ＣＬＡ／ＩＮＳ／Ｐ１／Ｐ２＝００／１２／００／００）の固定の値を取るものとする。このときデータメモリ１７内の加減算対象データは暗黙的に特定される。
【００２３】
Ｐ１またはＰ２のパラメータを可変にし、加減算対象データを指定することも可能である。
【００２４】
Ｄａｔａには減算すべき値が入り、ここでは例えばＬｃ＝０２ｈ固定、すなわちＤａｔａの長さは２バイト固定とする。
【００２５】
図９は、上限警告値等の値を設定、変更するための、書き換えコマンドの電文構成を示している。ここでは、命令データとパラメータとしてＣＬＡ／ＩＮＳ／Ｐ１／Ｐ２／Ｌｃ＝００／１４／０１〜０６／００／０２ｈの値を持つ。
【００２６】
パラメータＰ１は０１ｈ〜０６ｈの値を持ち、０１ｈから順に、上限値、下限値、上限警告値、下限警告値、上限値と上限警告値の差、下限警告値と下限値との差を示す。
【００２７】
Ｄａｔａにはこれらの値が入り、ここでは例えばＬｃ＝０２ｈ固定、すなわちＤａｔａの長さは２バイト固定とする。
【００２８】
図１０は、データメモリ１７内で、各値が格納された状態を示している。
【００２９】
ここでは、特定のＥＦのデータ領域に、加減算対象データ、上限値、上限警告値、下限値、下限警告値が格納されていることを示している。
【００３０】
これらの値は、カード発行時に特定のコマンドにより設定される。またカード発行後、特定のコマンドにより値を書き換えられるようにすることも考えられる。
【００３１】
また、図１１に示すように、上限値と上限警告値の差の値を、加算すべき値に続けてＤａｔａ内に設定することも考えられる。このときＬｃ＝０４ｈ固定となる。
【００３２】
図１２は、データメモリ１７内で、各値が格納された状態を示している。
【００３３】
ここでは、特定のＥＦのデータ領域に、加減算対象データ、上限値、上限値と上限警告値との差、下限値、下限警告値と下限値の差を格納する。このときＩＣカード４は、上限警告値を上限値から差の値を減算することにより求め、下限警告値を下限値に差の値を加算して求めることになる。
【００３４】
次に、上記のような構成において、加算処理（クレジット取引業務処理）を、図１３に示すフローチャートを参照しつつ説明する。  
たとえば今、パソコン１のキーボード７と表示部８とを用いてＩＣカード４を用いた加算処理モードに設定し、加算額を設定する。これにより、パソコン１の制御部５はＩＣカード４の加算処理モードを判断し、加算コマンドを生成する。
【００３５】
また、ＩＣカード４はリーダライタ３に挿入され、ＩＣカード４のＣＰＵ１４とリーダライタ３の制御部５とのアンサーｔｏリターンにより、ＩＣカード４とリーダライタ３とを接続する。
【００３６】
この状態において、上記パソコン１により生成した加算データを含む加算コマンドをリーダライタ３を介してＩＣカード４のＣＰＵ１４に送信する。  
これにより、ＩＣカード４のＣＰＵ１４は、供給されるコマンドを受信し（ＳＴ１）、まず命令データ（ＣＬＡ／ＩＮＳ）がＩＣカード4によりサポートしているコードであるかどうかを確認する（ＳＴ２）。サポートしていない場合、ＣＰＵ１４は、エラー処理に進み、エラーステータスのレスポンス電文をリーダライタ３を介してパソコン１へ送信し（ＳＴ３）、次のコマンド電文の入力待ちに進む
サポートしている場合、ＣＰＵ１４は、命令データ（ＣＬＡ／ＩＮＳ）が「００／１０ｈ」の際に（ＳＴ４）、まず本コマンドを実行するために必要な照合あるいは認証コマンドが存在するとき、これが実施済みかどうかを確認する（ＳＴ５）。実施済みでないときはエラー処理に進む。照合あるいは認証コマンドが事前に実施される場合の他に、加算コマンド自身がセキュアメッセージング処理されることにより、セキュリティが保たれる場合も考えられる。
【００３７】
次に、ＣＰＵ１４は、パラメータ（Ｐ１／Ｐ２／Ｌｃ）が「００／００／０２ｈ」であるかどうかを確認する（ＳＴ６）。これ以外の場合、ＣＰＵ１４は、対応するエラーステータスのレスポンス電文をリーダライタ３を介してパソコン１へ送信し（ＳＴ３）、次のコマンド電文の入力待ちに進む。
【００３８】
また、ＣＰＵ１４は、パラメータ（Ｐ１／Ｐ２／Ｌｃ）が「００／００／０２ｈ」の場合、加算コマンドルーチンへ進む。
【００３９】
加算コマンドルーチンにおいて、まず、ＣＰＵ１４は、Ｄａｔａの長さ（ここでは２バイト）が正しいことを確認する（ＳＴ７）。長さが正しくない場合はエラー処理に進む。
【００４０】
長さが正しい場合は、ＣＰＵ１４は、データメモリ１７内の加減算対象データを読み出し、ワーキングメモリ１６に格納する。次にＣＰＵ１４は、加算データＤａｔａの値を加減算対象データに加算し、加算した結果と、対応するデータメモリ１７内の上限値とを比較する（ＳＴ８）。
【００４１】
このとき加算結果の値が上限値を超えている場合、ＣＰＵ１４は、データメモリ１７内の加減算対象データを加算結果の値に書き換えることをせずに、その旨のエラーステータスのレスポンス電文をリーダライタ３を介してパソコン１へ送信し（ＳＴ３）、次のコマンド電文の入力待ちに進む
また、ステップ８による加算結果の値が上限値を超えていない場合、ＣＰＵ１４は、加減算対象データと加算データＤａｔａとの加算結果とデータメモリ１７内の上限警告値を比較する（ＳＴ９）。
【００４２】
この比較により、ＣＰＵ１４は、加算結果の値が上限警告値を超えている場合、警告ステータスをワーキングメモリ１６にセットし（ＳＴ１０）、データメモリ１７内の加減算対象データを加算結果の値に書き換える（ＳＴ１１）。こののち、ＣＰＵ１４は、書き換えが正常に行われた場合に（ＳＴ１２）、警告ステータスのレスポンス電文をリーダライタ３を介してパソコン１へ送信し（ＳＴ１３）、次のコマンド電文の入力待ちに進む。
【００４３】
これにより、パソコン１の制御部５は、警告ステータスのレスポンス電文を受取った際に、データメモリ１７内の加減算対象データの加算結果が上限値に近付いた旨を表示部８にて案内表示する。
【００４４】
また、上記ステップ９の比較により、加算結果の値が上限警告値を超えていない場合、ＣＰＵ１４は、データメモリ１７内の加減算対象データを加算結果の値に書き換える（ＳＴ１１）。その後、ＣＰＵ１４は、書き換えが正常に行われた場合に（ＳＴ１２）、正常ステータスをワーキングメモリ１６にセットし（ＳＴ１４）、正常ステータスのレスポンス電文をリーダライタ３を介してパソコン１へ送信し（ＳＴ１３）、次のコマンド電文の入力待ちに進む。
【００４５】
上記ステップ１１の書き換えが正常に行われなかった場合に、ＣＰＵ１４は、エラーステータスのレスポンス電文をリーダライタ３を介してパソコン１へ送信し（ＳＴ３）、次のコマンド電文の入力待ちに進む。
【００４６】
なお、上記ステップ４において、ＣＰＵ１４は、異なる命令データのコマンドの場合、該当するコマンド処理を実行しステップ１３へ進む（ＳＴ１５）。
上記の説明では上限値、上限警告値、下限値、下限警告値を超えた場合の処理として、レスポンス電文でエラーあるいは警告ステータスを返す例を示したが、例えば、携帯可能電子装置がその旨を示す音を出したり色を変えることにより、通知するようにしても良い。
【００４７】
次に、上記のような構成において、減算処理（プリペイド取引業務処理）を、図１４に示すフローチャートを参照しつつ説明する。  
たとえば今、パソコン１のキーボード７と表示部８とを用いてＩＣカード４を用いた減算処理モードに設定し、減算額を設定する。これにより、パソコン１の制御部５はＩＣカード４の減算処理モードを判断し、減算コマンドを生成する。
【００４８】
また、ＩＣカード４はリーダライタ３に挿入され、ＩＣカード４のＣＰＵ１４とリーダライタ３の制御部５とのアンサーｔｏリターンにより、ＩＣカード４とリーダライタ３とを接続する。
【００４９】
この状態において、上記パソコン１により生成した減算データを含む減算コマンドをリーダライタ３を介してＩＣカード４のＣＰＵ１４に送信する。  
これにより、ＩＣカード４のＣＰＵ１４は、供給されるコマンドを受信し（ＳＴ１）、まず命令データ（ＣＬＡ／ＩＮＳ）がＩＣカード4によりサポートしているコードであるかどうかを確認する（ＳＴ２）。サポートしていない場合、ＣＰＵ１４は、エラー処理に進み、エラーステータスのレスポンス電文をリーダライタ３を介してパソコン１へ送信し（ＳＴ３）、次のコマンド電文の入力待ちに進む。
【００５０】
サポートしている場合、ＣＰＵ１４は、命令データ（ＣＬＡ／ＩＮＳ）が「００／１０ｈ」の際に（ＳＴ４）、まず本コマンドを実行するために必要な照合あるいは認証コマンドが存在するとき、これが実施済みかどうかを確認する（ＳＴ５）。実施済みでないときはエラー処理に進む。照合あるいは認証コマンドが事前に実施される場合の他に、減算コマンド自身がセキュアメッセージング処理されることにより、セキュリティが保たれる場合も考えられる。
【００５１】
次に、ＣＰＵ１４は、パラメータ（Ｐ１／Ｐ２／Ｌｃ）が「００／００／０４ｈ」であるかどうかを確認する（ＳＴ１６）。これ以外の場合、ＣＰＵ１４は、対応するエラーステータスのレスポンス電文をリーダライタ３を介してパソコン１へ送信し（ＳＴ３）、次のコマンド電文の入力待ちに進む。
【００５２】
また、ＣＰＵ１４は、パラメータ（Ｐ１／Ｐ２／Ｌｃ）が「００／００／０４ｈ」の場合、減算コマンドルーチンへ進む。
【００５３】
減算コマンドルーチンにおいて、まず、ＣＰＵ１４は、Ｄａｔａの長さ（ここでは２バイト）が正しいことを確認する（ＳＴ１７）。長さが正しくない場合はエラー処理に進む。
【００５４】
長さが正しい場合は、ＣＰＵ１４は、データメモリ１７内の加減算対象データを読み出し、ワーキングメモリ１６に格納する。次にＣＰＵ１４は、減算データＤａｔａの値を加減算対象データから減算し、減算した結果と、対応するデータメモリ１７内の下限値とを比較する（ＳＴ１８）。
【００５５】
このとき減算結果の値が下限値を下回っている場合、ＣＰＵ１４は、データメモリ１７内の加減算対象データを減算結果の値に書き換えることをせずに、その旨のエラーステータスのレスポンス電文をリーダライタ３を介してパソコン１へ送信し（ＳＴ３）、次のコマンド電文の入力待ちに進む
また、ステップ１８による減算結果の値が下限値を下回っていない場合、ＣＰＵ１４は、加減算対象データと減算データＤａｔａとの減算結果とデータメモリ１７内の下限警告値を比較する（ＳＴ１９）。
【００５６】
この比較により、減算結果の値が下限警告値を下回っている場合、ＣＰＵ１４は、警告ステータスをワーキングメモリ１６にセットし（ＳＴ２０）、データメモリ１７内の加減算対象データを減算結果の値に書き換える（ＳＴ２１）。その後、ＣＰＵ１４は、書き換えが正常に行われた場合に（ＳＴ２２）、警告ステータスのレスポンス電文をリーダライタ３を介してパソコン１へ送信し（ＳＴ２３）、次のコマンド電文の入力待ちに進む。
【００５７】
これにより、パソコン１の制御部は、警告ステータスのレスポンス電文を受取った際に、データメモリ１７内の加減算対象データの減算結果が下限値に近付いた旨を表示部８にて案内表示する。
【００５８】
また、上記ステップ１９の比較により、減算結果の値が下限警告値を超えていない場合、ＣＰＵ１４は、データメモリ１７内の加減算対象データを減算結果の値に書き換える（ＳＴ２１）。ＣＰＵ１４は、書き換えが正常に行われた場合に（ＳＴ２２）、正常ステータスをワーキングメモリ１６にセットし（ＳＴ２４）、正常ステータスのレスポンス電文をリーダライタ３を介してパソコン１へ送信し（ＳＴ２３）、次のコマンド電文の入力待ちに進む。
【００５９】
上記ステップ２１の書き換えが正常に行われなかった場合に、ＣＰＵ１４は、エラーステータスのレスポンス電文をリーダライタ３を介してパソコン１へ送信し（ＳＴ３）、次のコマンド電文の入力待ちに進む。
【００６０】
次に、上記のような構成において、上限値、下限値、上限警告値、下限警告値、上限値と上限警告値の差、下限警告値と下限値との差等の書換え処理を、図１５に示すフローチャートを参照しつつ説明する。  
たとえば今、パソコン１のキーボード７と表示部８とを用いてＩＣカード４の上限値と上限限度値との書換えモードに設定する。これにより、パソコン１の制御部５は書換えコマンドを生成する。
【００６１】
また、ＩＣカード４はリーダライタ３に挿入され、ＩＣカード４のＣＰＵ１４とリーダライタ３の制御部５とのアンサーｔｏリターンにより、ＩＣカード４とリーダライタ３とを接続する。
【００６２】
この状態において、上記パソコン１により生成した書換えコマンドをリーダライタ３を介してＩＣカード４のＣＰＵ１４に送信する。  
これにより、ＩＣカード４のＣＰＵ１４は、供給されるコマンドを受信し（ＳＴ１）、まず命令データ（ＣＬＡ／ＩＮＳ）がＩＣカード4によりサポートしているコードであるかどうかを確認する（ＳＴ２）。サポートしていない場合、ＣＰＵ１４は、エラー処理に進み、エラーステータスのレスポンス電文をリーダライタ３を介してパソコン１へ送信し（ＳＴ３）、次のコマンド電文の入力待ちに進む。
【００６３】
サポートしている場合、ＣＰＵ１４は、命令データ（ＣＬＡ／ＩＮＳ）が「００／１４ｈ」の際に（ＳＴ３４）、まず本コマンドを実行するために必要な照合あるいは認証コマンドが存在するとき、これが実施済みかどうかを確認する（ＳＴ３５）。実施済みでないときはエラー処理に進む。照合あるいは認証コマンドが事前に実施される場合の他に、書換えコマンド自身がセキュアメッセージング処理されることにより、セキュリティが保たれる場合も考えられる。
【００６４】
次に、ＣＰＵ１４は、パラメータ（Ｐ１／Ｐ２／Ｌｃ）が「０1〜０６／００／０２ｈ」であるかどうかを確認する（ＳＴ３６）。これ以外の場合、ＣＰＵ１４は、対応するエラーステータスのレスポンス電文をリーダライタ３を介してパソコン１へ送信し（ＳＴ３）、次のコマンド電文の入力待ちに進む。
【００６５】
また、ＣＰＵ１４は、パラメータ（Ｐ１／Ｐ２／Ｌｃ）が「０1〜０６／００／０４ｈ」の場合、書換えコマンドルーチンへ進む。
【００６６】
書換えコマンドルーチンにおいて、まず、ＣＰＵ１４は、Ｄａｔａの長さ（ここでは４バイト）が正しいことを確認する（ＳＴ３７）。長さが正しくない場合はエラー処理に進む。
【００６７】
長さが正しい場合は、ＣＰＵ１４は、Ｐ１で示されたデータでデータメモリ１７内の対象データを書換える（ＳＴ３８）。パラメータＰ１は０１ｈ〜０６ｈの値を持ち、０１ｈから順に、上限値、下限値、上限警告値、下限警告値、上限値と上限警告値の差、下限警告値と下限値との差を示す。
【００６８】
その後、ＣＰＵ１４は書き換えが正常に行われた場合に（ＳＴ３９）、正常ステータスをワーキングメモリ１６にセットし（ＳＴ４０）、正常ステータスのレスポンス電文をリーダライタ３を介してパソコン１へ送信し（ＳＴ４１）、次のコマンド電文の入力待ちに進む。
【００６９】
なお、上記ステップ３４において、ＣＰＵ１４は、異なる命令データのコマンドの場合、該当するコマンド処理を実行しステップ４１へ進む（ＳＴ４２）。
尚、上記の説明では、上限値、上限警告値等の値を書き換えコマンドのＤａｔａ部に設定する例を示したが、加算コマンドあるいは減算コマンドのＤａｔａ部の加算値あるいは減算値の後ろに続けてこれらの値を設定することも考えられる。このときＬｃ＝０４ｈ固定となり、上限値、上限警告値等のデータはＰ１により示され、Ｐ１＝００ｈに替わりＰ１＝０１〜０６ｈが許可されることになる。このときＤａｔａ部（３、４バイト目）の値が加算あるいは減算処理の際に使用される。
【００７０】
上記したように、携帯可能電子装置において、メモリ内の値を特定の値だけ加算あるいは減算させるコマンドが入力された場合、加算あるいは減算した結果の値が各々上限値あるいは下限値を超えたときは、加算または減算処理は行わなわずエラー情報を出力し、また、加算あるいは減算した結果の値が各々上限値よりある値だけ小さい値（上限警告値）を超えたときあるいは下限値よりある値だけ大きい値（下限警告値）を下回ったときは、加算あるいは減算処理を実行しかつ警告情報を出力するものである。
これにより、携帯可能電子装置における加算あるいは減算した結果の値が各々上限値あるいは下限値に近づいたことを、外部装置側で知ることができる。
【００７１】
また、上限値あるいは下限値、または、上限値よりある値だけ小さい値あるいは下限値よりある値だけ大きい値、または、上記の各ある値は、外部から入力されるコマンドによって設定あるいは変更ができる。
【００７２】
これにより、各値をフレキシブルに設定することができる。
【図面の簡単な説明】
【００７３】
【図１】この発明の実施形態を説明するためのＩＣカード処理システムの概略構成を示す図。
【図２】ＩＣカードの機能を説明するためのブロック図。
【図３】ＩＣカードの内部構成を説明するためのブロック図。
【図４】データメモリ内に格納するデータ構造を説明するための図。
【図５】コマンド電文のフォーマット例を示す図。
【図６】レスポンス電文のフォーマット例を示す図。
【図７】加算コマンド電文のフォーマット例を示す図。
【図８】減算コマンド電文のフォーマット例を示す図。
【図９】書換えコマンド電文のフォーマット例を示す図。
【図１０】データメモリに格納されている加減算対象データ、上限値、上限警告値、下限値、下限警告値を説明するための図。
【図１１】書換えコマンド電文のフォーマット例を示す図。
【図１２】データメモリに格納されている加減算対象データ、上限値、上限値と上限警告値との差、下限値、下限警告値と下限値の差を説明するための図。
【図１３】加算処理を説明するためのフローチャート。
【図１４】減算処理を説明するためのフローチャート。
【図１５】書換え処理を説明するためのフローチャート。
【符号の説明】
【００７４】
１…パソコン、  ３…カードリーダライタ、  ４…ＩＣカード、  ５…制御部、  １４…ＣＰＵ、  １７…データメモリ。
【図１】
2005173935.tif 000003
【図２】
2005173935.tif 000004
【図３】
2005173935.tif 000005
【図４】
2005173935.tif 000006
【図５】
2005173935.tif 000007
【図６】
2005173935.tif 000008
【図７】
2005173935.tif 000009
【図８】
2005173935.tif 000010
【図９】
2005173935.tif 000011
【図１０】
2005173935.tif 000012
【図１１】
2005173935.tif 000013
【図１２】
2005173935.tif 000014
【図１３】
2005173935.tif 000015
【図１４】
2005173935.tif 000016
【図１５】
2005173935.tif 000017