【手続補正書】
【提出日】平成19年11月12日(2007.11.12)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】特許請求の範囲
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】  第１のベースを有する第１のプロセッサのために形成され、演算子と少なくとも１つのオペランドとを含む第１の命令を受け取る段階と、
前記少なくとも１つのオペランドが前記第１のベースよりも小さい第２のベースを超える潜在的桁あふれを伴わない時、又は、前記演算子が桁あふれに敏感でない時、前記第１の命令を、前記第２のベースを有する第２のプロセッサに対して最適化された第２の命令に変換する段階と、
前記少なくとも１つのオペランドが前記第２のベースを超える桁あふれの可能性を伴う時、及び、前記演算子が桁あふれに敏感である時、前記少なくとも１つのオペランドに付随する潜在的桁あふれの源であり、以前に最適化されている第３の命令を、前記第２のベースよりも大きく前記第１のベースよりも小さいか又は等しいより広いベースに変換する段階と、
を含むことを特徴とする、演算式最適化の方法。
【請求項２】  より広いベースへの前記変換段階は、前記第３の命令の以前の変換結果を、より広いベースへの前記変換段階の前に廃棄する段階を更に含むことを特徴とする請求項１に記載の方法。
【請求項３】  前記第２のプロセッサ上でより小さなベースに最適化することができない表現を拒否する段階を更に含むことを特徴とする請求項１に記載の方法。
【請求項４】  より広いベースへの前記変換段階は、より広い前記ベースが前記第２のプロセッサによってサポートされない時は前記第１の命令を拒否する段階を更に含むことを特徴とする請求項１に記載の方法。
【請求項５】  前記第１の命令は、算術であることを特徴とする請求項１に記載の方法。
【請求項６】  前記第１の命令は、タイプに敏感な非算術命令を含むことを特徴とする請求項１に記載の方法。
【請求項７】  前記第１の命令の前記変換段階の後で、前記第１のプロセッサのために形成された全ての命令が変換されるまで、前記第１の命令を受け取る段階に戻る段階を更に含むことを特徴とする請求項５に記載の方法。
【請求項８】  全ての制御経路において、各命令を後続命令にリンクする段階を更に含むことを特徴とする請求項７に記載の方法。
【請求項９】  前記第１の命令の前記変換段階は、
命令の結果の各々を、前記結果を消費する全ての命令にリンクする段階と、
前記変換段階が値を作り出す段階を含む場合、前記値を生み出した命令に前記値をリンクする段階と、
前記値が桁あふれの可能性を伴う場合、前記桁あふれを最初に引き起こした命令に前記値をリンクする段階と、
を更に含む、ことを特徴とする請求項８に記載の方法。
【請求項１０】  前記第１のプロセッサは、「Ｊａｖａ（登録商標）仮想計算機」を含み、
前記第２のプロセッサは、「Ｊａｖａ  Ｃａｒｄ（登録商標）仮想計算機」を含む、
ことを特徴とする請求項１に記載の方法。
【請求項１１】  前記第１のベースは、前記第１のベースのサイズよりも小さいサイズを有する少なくとも１つのデータタイプ上で算術演算を実行するために、前記第１のプロセッサによって使用され、
前記少なくとも１つのデータタイプのサイズに等しいサイズを有する前記第２のベースは、前記少なくとも１つのデータタイプ上で算術演算を実行するために、前記第２のプロセッサによって使用される、
ことを特徴とする請求項１に記載の方法。
【請求項１２】  前記第１のプロセッサは、３２ビットのプロセッサを含み、
前記第２のプロセッサは、リソース限定型１６ビットのプロセッサを含む、
ことを特徴とする請求項１に記載の方法。
【請求項１３】  前記第１のベースは、前記第１のベースのサイズよりも小さいサイズを有する少なくとも１つのデータタイプ上で算術演算を実行するために、前記第１のプロセッサによって使用され、
前記少なくとも１つのデータタイプのサイズよりも大きいサイズを有する前記第２のベースは、前記少なくとも１つのデータタイプ上で算術演算を実行するために、前記第２のプロセッサによって使用される、
ことを特徴とする請求項９に記載の方法。
【請求項１４】  前記第１のプロセッサは、３２ビットのプロセッサを含み、
前記第２のプロセッサは、リソース限定型１６ビットのプロセッサを含む、
ことを特徴とする請求項１３に記載の方法。
【請求項１５】  第１のベースを有する第１のプロセッサのために形成され、演算子と少なくとも１つのオペランドとを含む第１の命令を受け取る段階と、  前記少なくとも１つのオペランドが前記第１のベースよりも小さい第２のベースを超える潜在的桁あふれを伴わない時、又は、前記演算子が桁あふれに敏感でない時、前記第１の命令を、前記第２のベースを有する第２のプロセッサに対して最適化された第２の命令に変換する段階と、
前記少なくとも１つのオペランドが前記第２のベースを超える桁あふれの可能性を伴う時、及び、前記演算子が桁あふれに敏感である時、前記少なくとも１つのオペランドに付随する潜在的桁あふれの源であり、以前に最適化されている第３の命令を、前記第２のベースよりも大きく前記第１のベースよりも小さいか又は等しいより広いベースに変換する段階と、
を含む演算式最適化を実行する、計算機が実行可能な命令プログラムを包含することを特徴とする、計算機が読取可能なプログラム記憶装置。
【請求項１６】  より広いベースへの前記変換段階は、前記第３の命令の以前の変換結果を、より広いベースへの前記変換段階の前に破棄する段階を更に含むことを特徴とする請求項１５に記載のプログラム記憶装置。
【請求項１７】  前記第２のプロセッサ上でより小さなベースに最適化することができない表現を拒否する段階を更に含むことを特徴とする請求項１５に記載のプログラム記憶装置。
【請求項１８】  より広いベースへの前記変換段階は、より広い前記ベースが前記第２のプロセッサによってサポートされない時は前記第１の命令を拒否する段階を更に含むことを特徴とする請求項１５に記載のプログラム記憶装置。
【請求項１９】  前記第１の命令は、算術であることを特徴とする請求項１５に記載のプログラム記憶装置。
【請求項２０】  前記第１の命令は、タイプに敏感な非算術命令を含むことを特徴とする請求項１５に記載のプログラム記憶装置。
【請求項２１】  前記第１の命令の前記変換段階の後で、前記第１のプロセッサのために形成された全ての命令が変換されるまで、前記第１の命令を受け取る段階に戻る段階を更に含むことを特徴とする請求項１９に記載のプログラム記憶装置。
【請求項２２】  全ての制御経路において、各命令を後続命令にリンクする段階を更に含むことを特徴とする請求項２１に記載のプログラム記憶装置。
【請求項２３】  前記第１の命令の前記変換段階は、
命令の結果の各々を、前記結果を消費する全ての命令にリンクする段階と、
前記変換段階が値を作り出す段階を含む場合、前記値を生み出した命令に前記値をリンクする段階と、
前記値が桁あふれの可能性を伴う場合、前記桁あふれを最初に引き起こした命令に前記値をリンクする段階と、
を更に含む、ことを特徴とする請求項２２に記載のプログラム記憶装置。
【請求項２４】  前記第１のプロセッサは、「Ｊａｖａ（登録商標）仮想計算機」を含み、
前記第２のプロセッサは、「Ｊａｖａ  Ｃａｒｄ（登録商標）仮想計算機」を含む、
ことを特徴とする請求項１５に記載のプログラム記憶装置。
【請求項２５】  前記第１のベースは、前記第１のベースのサイズよりも小さいサイズを有する少なくとも１つのデータタイプ上で算術演算を実行するために、前記第１のプロセッサによって使用され、
前記少なくとも１つのデータタイプのサイズに等しいサイズを有する前記第２のベースは、前記少なくとも１つのデータタイプ上で算術演算を実行するために、前記第２のプロセッサによって使用される、
ことを特徴とする請求項１５に記載のプログラム記憶装置。
【請求項２６】  前記第１のプロセッサは、３２ビットのプロセッサを含み、
前記第２のプロセッサは、リソース限定型１６ビットのプロセッサを含む、
ことを特徴とする請求項１５に記載のプログラム記憶装置。
【請求項２７】  前記第１のベースは、前記第１のベースのサイズよりも小さいサイズを有する少なくとも１つのデータタイプ上で算術演算を実行するために、前記第１のプロセッサによって使用され、
前記少なくとも１つのデータタイプのサイズよりも大きいサイズを有する前記第２のベースは、前記少なくとも１つのデータタイプ上で算術演算を実行するために、前記第２のプロセッサによって使用される、
ことを特徴とする請求項２３に記載のプログラム記憶装置。
【請求項２８】  プログラム命令を有する少なくとも１つのメモリと、
第１のベースを有する第１のプロセッサのために形成され、演算子と少なくとも１つのオペランドとを含む第１の命令を受け取り、
前記少なくとも１つのオペランドが前記第１のベースよりも小さい第２のベースを超える潜在的桁あふれを伴わない時、又は、前記演算子が桁あふれに敏感でない時、前記第１の命令を、前記第２のベースを有する第２のプロセッサに対して最適化された第２の命令に変換し、
前記少なくとも１つのオペランドが前記第２のベースを超える桁あふれの可能性を伴う時、及び、前記演算子が桁あふれに敏感である時、前記少なくとも１つのオペランドに付随する潜在的桁あふれの源であり、以前に最適化されている第３の命令を、前記第２のベースよりも大きく前記第１のベースよりも小さいか又は等しいより広いベースに変換する、
ために前記プログラム命令を使用するように形成された少なくとも１つのプロセッサと、
を含むことを特徴とする、演算式最適化のための装置。
【請求項２９】  前記少なくとも１つのプロセッサは、より広いベースに変換する段階の前に、前記プログラム命令を使用して前記第３の命令の以前の変換結果を破棄するように更に形成されることを特徴とする請求項２８に記載の装置。
【請求項３０】  第１のベースを有する第１のプロセッサのために形成され、演算子と少なくとも１つのオペランドとを含む第１の命令を受け取る手段と、  前記少なくとも１つのオペランドが前記第１のベースよりも小さい第２のベースを超える潜在的桁あふれを伴わない時、又は、前記演算子が桁あふれに敏感でない時、前記第１の命令を、前記第２のベースを有する第２のプロセッサに対して最適化された第２の命令に変換する手段と、
前記少なくとも１つのオペランドが前記第２のベースを超える桁あふれの可能性を伴う時、及び、前記演算子が桁あふれに敏感である時、前記少なくとも１つのオペランドに付随する潜在的桁あふれの源であり、以前に最適化されている第３の命令を、前記第２のベースよりも大きく前記第１のベースよりも小さいか又は等しいより広いベースに変換する手段と、
を含むことを特徴とする、演算式最適化のための装置。
【請求項３１】  より広いベースに変換する前記手段は、より広いベースに変換する前記段階の前に、前記第３の命令の以前の変換結果を破棄する手段を更に含むことを特徴とする請求項３０に記載の装置。
【請求項３２】  全ての制御経路において、各命令を後続命令にリンクする手段を更に含むことを特徴とする請求項３０に記載の装置。
【請求項３３】  第１のベースを有するプロセッサを目標とする少なくとも１つの命令の演算式最適化を含むアプリケーションソフトウエアプログラムを使用する方法であって、
第１のベースを有する第１のプロセッサのために形成され、演算子と少なくとも１つのオペランドとを含む第１の命令を受け取る段階、
前記少なくとも１つのオペランドが前記第１のベースよりも小さい第２のベースを超える潜在的桁あふれを伴わない時、又は、前記演算子が桁あふれに敏感でない時、前記第１の命令を、前記第２のベースを有する第２のプロセッサに対して最適化された第２の命令に変換する段階、及び
前記少なくとも１つのオペランドが前記第２のベースを超える桁あふれの可能性を伴う時、及び、前記演算子が桁あふれに敏感である時、前記少なくとも１つのオペランドに付随する潜在的桁あふれの源であり、以前に最適化されている第３の命令を、前記第２のベースよりも大きく前記第１のベースよりも小さいか又は等しいより広いベースに変換する段階、
を含む方法に従って最適化されたソフトウエアプログラムを、プロセッサ上に受け取る段階と、
命令のシーケンスを前記プロセッサ上で実行する段階と、
を含むことを特徴とする方法。
【請求項３４】  前記少なくとも１つの命令をリソース限定型装置上に記憶する段階を更に含むことを特徴とする請求項３３に記載の方法。
【請求項３５】  マイクロ制御装置によって実行される仮想計算機、
を含み、
前記仮想計算機は、
第１のベースを有する第１のプロセッサのために形成され、演算子と少なくとも１つのオペランドとを含む第１の命令を受け取る段階、
前記少なくとも１つのオペランドが前記第１のベースよりも小さい第２のベースを超える潜在的桁あふれを伴わない時、又は、前記演算子が桁あふれに敏感でない時、前記第１の命令を、前記第２のベースを有する第２のプロセッサに対して最適化された第２の命令に変換する段階、及び
前記少なくとも１つのオペランドが前記第２のベースを超える桁あふれの可能性を伴う時、及び、前記演算子が桁あふれに敏感である時、前記少なくとも１つのオペランドに付随する潜在的桁あふれの源であり、以前に最適化されている第３の命令を、前記第２のベースよりも大きく前記第１のベースよりも小さいか又は等しいより広いベースに変換する段階、
を含む方法に従って最適化された複数の予め最適化された命令から成るソフトウエアアプリケーションを実行し、
前記仮想計算機は、リソース限定型装置上で実行するために予め最適化されている最適化された命令を受け取る手段と前記命令を実行する手段とを含む、
ことを特徴とする、マイクロ制御装置が組み込まれたスマートカード。
【請求項３６】  前記第２のプロセッサ上でより小さなベースに最適化することができない表現を拒否する手段を更に含むことを特徴とする請求項３０に記載の装置。
【請求項３７】  より広いベースへの前記変換手段は、より広い前記ベースが前記第２のプロセッサによってサポートされない時は前記第１の命令を拒否する手段を更に含むことを特徴とする請求項３０に記載の装置。
【請求項３８】  前記第１の命令は、算術であることを特徴とする請求項３０に記載の装置。
【請求項３９】  前記第１の命令は、タイプに敏感な非算術命令を含むことを特徴とする請求項３０に記載の装置。
【請求項４０】  前記第１の命令の前記変換手段の後に、前記第１のプロセッサのために形成された全ての命令が変換されるまで、前記第１の命令を受け取る段階に戻る手段を更に含むことを特徴とする請求項３８に記載の装置。
【請求項４１】  前記第１の命令の前記変換手段は、
命令の結果の各々を、前記結果を消費する全ての命令にリンクする手段と、
前記変換段階が値を作り出す段階を含む場合、前記値を生み出した命令に前記値をリンクする手段と、
前記値が桁あふれの可能性を伴う場合、前記桁あふれを最初に引き起こした命令に前記値をリンクする手段と、
を更に含む、ことを特徴とする請求項３２に記載の装置。
【請求項４２】  前記第１のプロセッサは、「Ｊａｖａ（登録商標）仮想計算機」を含み、
前記第２のプロセッサは、「Ｊａｖａ  Ｃａｒｄ（登録商標）仮想計算機」を含む、
ことを特徴とする請求項３０に記載の装置。
【請求項４３】  前記第１のベースは、前記第１のベースのサイズよりも小さいサイズを有する少なくとも１つのデータタイプ上で算術演算を実行するために、前記第１のプロセッサによって使用され、
前記少なくとも１つのデータタイプのサイズに等しいサイズを有する前記第２のベースは、前記少なくとも１つのデータタイプ上で算術演算を実行するために、前記第２のプロセッサによって使用される、
ことを特徴とする請求項３０に記載の装置。
【請求項４４】  前記第１のプロセッサは、３２ビットのプロセッサを含み、
前記第２のプロセッサは、リソース限定型１６ビットのプロセッサを含む、
ことを特徴とする請求項３０に記載の装置。
【請求項４５】  前記第１のベースは、前記第１のベースのサイズよりも小さいサイズを有する少なくとも１つのデータタイプ上で算術演算を実行するために、前記第１のプロセッサによって使用され、
前記少なくとも１つのデータタイプのサイズよりも大きいサイズを有する前記第２のベースは、前記少なくとも１つのデータタイプ上で算術演算を実行するために、前記第２のプロセッサによって使用される、
ことを特徴とする請求項４１に記載の装置。
【請求項４６】  前記第１のプロセッサは、３２ビットのプロセッサを含み、
前記第２のプロセッサは、リソース限定型１６ビットのプロセッサを含む、
ことを特徴とする請求項４５に記載の装置。
【請求項４７】  第１のベースを有する第１のプロセッサのために形成され、演算子と少なくとも１つのオペランドとを含む第１の命令を受け取る段階と、
前記少なくとも１つのオペランドが桁あふれを伴うか否か、及び、前記演算子が桁あふれに敏感であるか否かに基づいて、前記少なくとも１つのオペランドが潜在的桁あふれを有するか否かを示す段階と、
を含むことを特徴とする、演算式最適化の方法。
【請求項４８】  前記示す段階は、
前記少なくとも１つのオペランドが桁あふれを伴わない時、前記少なくとも１つのオペランドが潜在的桁あふれを持たないことを示す段階、
を更に含む、
ことを特徴とする請求項４７に記載の方法。
【請求項４９】  前記示す段階は、
前記少なくとも１つのオペランドが潜在的桁あふれを伴う時、及び、前記演算子が桁あふれに敏感である時に、前記第１の命令が潜在的桁あふれを有することを示す段階、
を更に含む、
ことを特徴とする請求項４８に記載の方法。
【請求項５０】  前記少なくとも１つのオペランドが前記第１のベースよりも小さい第２のベースを超える潜在的桁あふれを伴わない時、又は、前記演算子が桁あふれに敏感でない時、前記第１の命令を、前記第２のベースを有する第２のプロセッサに対して最適化された第２の命令に変換する段階、
を更に含むことを特徴とする請求項４９に記載の方法。
【請求項５１】  前記第２のプロセッサ上でより小さなベースに最適化することができない表現を拒否する段階を更に含むことを特徴とする請求項５０に記載の方法。
【請求項５２】  前記第１の命令は、算術であることを特徴とする請求項４７に記載の方法。
【請求項５３】  前記第１の命令は、タイプに敏感な非算術命令を含むことを特徴とする請求項４７に記載の方法。
【請求項５４】  前記第１のプロセッサは、「仮想計算機」を含み、
前記第２のプロセッサは、「仮想計算機」を含む、
ことを特徴とする請求項５０に記載の方法。
【請求項５５】  前記第１のベースは、前記第１のベースのサイズよりも小さいサイズを有する少なくとも１つのデータタイプ上で算術演算を実行するために、前記第１のプロセッサによって使用され、
前記少なくとも１つのデータタイプのサイズに等しいサイズを有する前記第２のベースは、前記少なくとも１つのデータタイプ上で算術演算を実行するために、前記第２のプロセッサによって使用される、
ことを特徴とする請求項５０に記載の方法。
【請求項５６】  前記第１のプロセッサは、３２ビットのプロセッサを含み、
前記第２のプロセッサは、リソース限定型１６ビットのプロセッサを含む、
ことを特徴とする請求項５０に記載の方法。
【請求項５７】  第１のベースを有する第１のプロセッサのために形成され、演算子と少なくとも１つのオペランドとを含む第１の命令を受け取る段階と、
前記少なくとも１つのオペランドが桁あふれを伴うか否か、及び、前記演算子が桁あふれに敏感であるか否かに基づいて、前記少なくとも１つのオペランドが潜在的桁あふれを有するか否かを示す段階と、
を含む演算式最適化方法を実行する、計算機が実行可能な命令プログラムを包含することを特徴とする、計算機が読取可能なプログラム記憶装置。
【請求項５８】  前記示す段階は、
前記少なくとも１つのオペランドが桁あふれを伴わない時、前記少なくとも１つのオペランドが潜在的桁あふれを持たないことを示す段階、
を更に含む、
ことを特徴とする請求項５７に記載のプログラム記憶装置。
【請求項５９】  前記示す段階は、
前記少なくとも１つのオペランドが潜在的桁あふれを伴う時、及び、前記演算子が桁あふれに敏感である時に、前記第１の命令が潜在的桁あふれを有することを示す段階、
を更に含む、
ことを特徴とする請求項５７に記載のプログラム記憶装置。
【請求項６０】  前記方法は、
前記少なくとも１つのオペランドが前記第１のベースよりも小さい第２のベースを超える潜在的桁あふれを伴わない時、又は、前記演算子が桁あふれに敏感でない時、前記第１の命令を、前記第２のベースを有する第２のプロセッサに対して最適化された第２の命令に変換する段階、
を更に含む、
ことを特徴とする請求項５９に記載のプログラム記憶装置。
【請求項６１】  前記第２のプロセッサ上でより小さなベースに最適化することができない表現を拒否する段階を更に含むことを特徴とする請求項６０に記載のプログラム記憶装置。
【請求項６２】  前記第１の命令は、算術であることを特徴とする請求項５７に記載のプログラム記憶装置。
【請求項６３】  前記第１の命令は、タイプに敏感な非算術命令を含むことを特徴とする請求項５７に記載のプログラム記憶装置。
【請求項６４】  前記第１のプロセッサは、「仮想計算機」を含み、
前記第２のプロセッサは、「仮想計算機」を含む、
ことを特徴とする請求項６０に記載のプログラム記憶装置。
【請求項６５】  前記第１のベースは、前記第１のベースのサイズよりも小さいサイズを有する少なくとも１つのデータタイプ上で算術演算を実行するために、前記第１のプロセッサによって使用され、
前記少なくとも１つのデータタイプのサイズに等しいサイズを有する前記第２のベースは、前記少なくとも１つのデータタイプ上で算術演算を実行するために、前記第２のプロセッサによって使用される、
ことを特徴とする請求項６０に記載のプログラム記憶装置。
【請求項６６】  前記第１のプロセッサは、３２ビットのプロセッサを含み、
前記第２のプロセッサは、リソース限定型１６ビットのプロセッサを含む、
ことを特徴とする請求項６０に記載のプログラム記憶装置。
【請求項６７】  第１のベースを有する第１のプロセッサのために形成され、演算子と少なくとも１つのオペランドとを含む第１の命令を受け取る手段と、
前記少なくとも１つのオペランドが桁あふれを伴うか否か、及び、前記演算子が桁あふれに敏感であるか否かに基づいて、前記少なくとも１つのオペランドが潜在的桁あふれを有するか否かを示す手段と、
を含むことを特徴とする、演算式最適化の装置。
【請求項６８】  前記示す手段は、
前記少なくとも１つのオペランドが桁あふれを伴わない時、前記少なくとも１つのオペランドが潜在的桁あふれを持たないことを示す手段、
を更に含む、
ことを特徴とする請求項６７に記載の装置。
【請求項６９】  前記示す手段は、
前記少なくとも１つのオペランドが潜在的桁あふれを伴う時、及び、前記演算子が桁あふれに敏感である時に、前記第１の命令が潜在的桁あふれを有することを示す手段、
を更に含む、
ことを特徴とする請求項６８に記載の装置。
【請求項７０】  前記方法は、
前記少なくとも１つのオペランドが前記第１のベースよりも小さい第２のベースを超える潜在的桁あふれを伴わない時、又は、前記演算子が桁あふれに敏感でない時、前記第１の命令を、前記第２のベースを有する第２のプロセッサに対して最適化された第２の命令に変換する手段、
を更に含む、
ことを特徴とする請求項６９に装置。
【請求項７１】  前記第２のプロセッサ上でより小さなベースに最適化することができない表現を拒否する手段を更に含むことを特徴とする請求項６９に装置。
【請求項７２】  前記第１の命令は、算術であることを特徴とする請求項６７に記載の装置。
【請求項７３】  前記第１の命令は、タイプに敏感な非算術命令を含むことを特徴とする請求項６７に記載の装置。
【請求項７４】  前記第１のプロセッサは、「仮想計算機」を含み、
前記第２のプロセッサは、「仮想計算機」を含む、
ことを特徴とする請求項７０に記載の装置。
【請求項７５】  前記第１のベースは、前記第１のベースのサイズよりも小さいサイズを有する少なくとも１つのデータタイプ上で算術演算を実行するために、前記第１のプロセッサによって使用され、
前記少なくとも１つのデータタイプのサイズに等しいサイズを有する前記第２のベースは、前記少なくとも１つのデータタイプ上で算術演算を実行するために、前記第２のプロセッサによって使用される、
ことを特徴とする請求項７０に記載の装置。
【請求項７６】  前記第１のプロセッサは、３２ビットのプロセッサを含み、
前記第２のプロセッサは、リソース限定型１６ビットのプロセッサを含む、
ことを特徴とする請求項７０に記載の装置。
【請求項７７】  プログラム命令を有する少なくとも１つのメモリと、
第１のベースを有する第１のプロセッサのために形成され、演算子と少なくとも１つのオペランドとを含む第１の命令を受け取り、かつ
前記少なくとも１つのオペランドが桁あふれを伴うか否か、及び、前記演算子が桁あふれに敏感であるか否かに基づいて、前記少なくとも１つのオペランドが潜在的桁あふれを有するか否かを示す、
前記プログラム命令を使用するようになった少なくとも１つのプロセッサと、
を含むことを特徴とする、演算式最適化の装置。
【請求項７８】  前記少なくとも１つのオペランドが桁あふれを伴わない時、前記少なくとも１つのオペランドが潜在的桁あふれを持たないことを示す、
ように更になっていることを特徴とする請求項７７に記載の装置。
【請求項７９】  前記少なくとも１つのオペランドが潜在的桁あふれを伴う時、及び、前記演算子が桁あふれに敏感である時に、前記第１の命令が潜在的桁あふれを有することを示す、
ように更になっていることを特徴とする請求項７８に記載の装置。
【請求項８０】  前記少なくとも１つのオペランドが前記第１のベースよりも小さい第２のベースを超える潜在的桁あふれを伴わない時、又は、前記演算子が桁あふれに敏感でない時、前記第１の命令を、前記第２のベースを有する第２のプロセッサに対して最適化された第２の命令に変換する、
ように更になっていることを特徴とする請求項７９に記載の装置。
【請求項８１】  前記第２のプロセッサ上でより小さなベースに最適化することができない表現を拒否するように更になっていることを特徴とする請求項８０に記載の装置。
【請求項８２】  前記第１の命令は、算術であることを特徴とする請求項７７に記載の装置。
【請求項８３】  前記第１の命令は、タイプに敏感な非算術命令を含むことを特徴とする請求項７７に記載の装置。
【請求項８４】  前記第１のプロセッサは、「仮想計算機」を含み、
前記第２のプロセッサは、「仮想計算機」を含む、
ことを特徴とする請求項８０に記載の装置。
【請求項８５】  前記第１のベースは、前記第１のベースのサイズよりも小さいサイズを有する少なくとも１つのデータタイプ上で算術演算を実行するために、前記第１のプロセッサによって使用され、
前記少なくとも１つのデータタイプのサイズに等しいサイズを有する前記第２のベースは、前記少なくとも１つのデータタイプ上で算術演算を実行するために、前記第２のプロセッサによって使用される、
ことを特徴とする請求項８０に記載の装置。
【請求項８６】  前記第１のプロセッサは、３２ビットのプロセッサを含み、
前記第２のプロセッサは、リソース限定型１６ビットのプロセッサを含む、
ことを特徴とする請求項８０に記載の装置。
【請求項８７】  第１のベースを有するプロセッサを目標とする少なくとも１つの命令の演算式最適化を含むアプリケーションソフトウエアプログラムを使用する方法であって、
第１のベースを有する第１のプロセッサのために形成され、演算子と少なくとも１つのオペランドとを含む第１の命令を受け取る段階、及び
前記少なくとも１つのオペランドが前記第１のベースよりも小さい第２のベースを超える潜在的桁あふれを伴わない時、又は、前記演算子が桁あふれに敏感でない時、前記第１の命令を、前記第２のベースを有する第２のプロセッサに対して最適化された第２の命令に変換する段階、
を含む方法に従って最適化されたソフトウエアプログラムを、プロセッサ上に受け取る段階と、
命令のシーケンスを前記プロセッサ上で実行する段階と、
を含むことを特徴とする方法。
【請求項８８】  前記少なくとも１つの命令をリソース限定型装置上に記憶する段階を更に含むことを特徴とする請求項８７に記載の方法。
【請求項８９】  マイクロ制御装置によって実行される仮想計算機、
を含み、
前記仮想計算機は、
第１のベースを有する第１のプロセッサのために形成され、演算子と少なくとも１つのオペランドとを含む第１の命令を受け取る段階、及び
前記少なくとも１つのオペランドが前記第１のベースよりも小さい第２のベースを超える潜在的桁あふれを伴わない時、又は、前記演算子が桁あふれに敏感でない時、前記第１の命令を、前記第２のベースを有する第２のプロセッサに対して最適化された第２の命令に変換する段階、
を含む方法に従って最適化された複数の予め最適化された命令から成るソフトウエアアプリケーションを実行し、
前記仮想計算機は、リソース限定型装置上で実行するために予め最適化されている最適化された命令を受け取る手段と前記命令を実行する手段とを含む、
ことを特徴とする、マイクロ制御装置が組み込まれたスマートカード。