冗余的指令
这是冗余的F指令。它被替换为: FP_DEC_TO_ASCII
将s1指定的16位数据转换为表示等效十进制值的ASCII代码。转换结果存储在以d指定的16位区域开头的区域中,如同以s2指定。以s2中的十进制数指定字节数。(无法对BCD数据进行此指定。)
输入
要转换的16位区域(源)
指定用于表示目标数据的字节数(ASCII代码)
输出
用于存储ASCII代码的16位区域(目标)
建议使用相应的FP7指令,来代替使用此F型指令:FP_DEC_TO_ASCII 十进制 -> ASCII转换
如果转换正数,将不转换"+"号。
当转换负数时,"-"号也被转换为 ASCII代码(ASCII HEX代码:16#2D)。
如果由s2指定的区域大于转换数据所需的区域,"SPACE"的ASCII代码(ASCII HEX代码:16#20)将存储到其他区域。
以朝向最终地址的方向存储数据,因此视数据存储区域的大小而定,ASCII代码的位置可能会改变。
如果转换后ASCII代码的字节数(包括减号)大于由s2指定的字节数,将出现运算错误。当指定s2的转换对象时,确保考虑符号。
下图表示从16位十进制数据到ASCII代码的转换。
当转换负数时:
当转换正数时
表示ASCII HEX代码的十进制字符:
十进制字符 |
ASCII HEX代码 |
---|---|
SPACE - 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指定的区域。
如果由s2指定的数据被识别为"0"。
如果转换结果超过由d指定的区域。
如果转换结果的字节数超过由s2指定的字节数。
如果由s2指定的字节数超过由d指定的区域。
如果由s2指定的数据被识别为"0"。
如果转换结果超过由d指定的区域。
如果转换结果的字节数超过由s2指定的字节数。