冗長命令
この命令は冗長F命令です。次の命令に置き換わっています:FP_DEC_TO_ASCII
s1で指定されたエリアに格納されている16ビットデータをASCIIコードに変換します。変換結果は、s2で指定されたバイト数分が、dで指定されたエリアに格納されます。s2には、バイト数を10進数で指定してください。(BCDデータを指定することはできません。)
入力
変換するデータを格納している16ビットエリア (変換元)
変換するバイト数 (ASCIIコード)
出力
変換結果のASCIIデータを格納する16ビットエリアの先頭アドレス (変換結果)
F命令を使用する代わりに、対応するFP7命令を使用することをおすすめします。FP_DEC_TO_ASCII 10進 -> ASCII変換
変換対象が正の場合は、数値データの前に符号コード"+"は付きません。
変換対象が負の場合は、変換後の ASCIIコードの前に符号コード"-"が付きます。ASCII HEXコード: 16#2D)
s2で指定されたエリアが、変換データに必要なエリアより大きくなる場合、格納エリアの余りの部分は、"スペース"のASCIIコード(ASCII HEX コード: 16#20) が埋められます。
最終アドレスの方向に詰めて格納しますので、格納エリアの大きさによってASCIIコードの位置が変わります。
変換後のASCIIコードのバイト数(負の符号を含む)が、s2 で指定されたバイト数よりも大きくなる場合は、演算エラーになります。符号を含めた変換対象の桁数を考慮して、s2を指定してください。
以下の図は、16ビット10進データからASCIIコードへの変換例を示しています。
負の数を変換する場合:
正の数を変換する場合:
10進数とASCII HEXコードの対応表
10進数 |
ASCII HEXコード |
---|---|
スペース - 0 1 2 3 4 5 6 7 8 9 |
16#20 16#2D 16#30 16#31 16#32 16#33 16#34 16#35 16#36 16#37 16#38 16#39 |
s2で指定したバイト数が、dで指定したエリアを超えるときON
s2で指定したデータが"0"のときON
変換結果がdで指定したエリアを超えるときON
変換結果のバイト数がs2で指定したバイト数を超えるときON
s2で指定したバイト数が、dで指定したエリアを超えるときON
s2で指定したデータが"0"のときON
変換結果がdで指定したエリアを超えるときON
変換結果のバイト数がs2で指定したバイト数を超えるときON