今天学了转换指令
转换指令在使用的过程中需要注意的是当被转换的数转换后超出其存储的允许范围,会出现得不到有效的转换结果,这时候状态字的溢出位OV和存储溢出位OS将被置位1。如I_BCD,16位整数的允许范围为-32768~ 32767,而三位BCD码的允许范围为-999~ 999。
转换指令就是处理不同数据的工具,把不同的数据类型转换成相同的,然后再进行逻辑运算和算法。
转换器包括:
BCD_I
I_BCD
I_DI
BCD_DI
DI_BCD
DI_R
INV_I
INV_DI
NEG_I
NEG_DI
NEG_R
ROUND
TRUNC
CEIL
FLOOR
BCD转换成整数和整数转换成BCD
整数转换成双整数
把双整数转换成浮点数
二进制反码 2转换成-3 3转换成-4
二进制补码整数 10转换成-10 -20转换成20
取整到最接近的双精度整数 1.5转换成2 2.5转换成2 2.4转换成2 2.7转换成3
它的规则是四舍五入,但是碰到.5它是接近偶数的数字。
比如1.5——2 2.5——2 3.5——4
截尾取整 意思是不管你小数点后面是什么都去掉小数位。
向上取整 意思是只要小数位大于0,整数部分都向上进一位。
向下取整 只要小数点后面有数字,它直接给去掉,留下整数部分。
这个跟TRUNC相似。
,