quote:以下是引用emil128在2012-07-20 08:54:35的发言:
STL不严格要求数据类型是应为在执行运算的时候,进行运算的对象其实是累加器ACCU1和ACCU2,最大长度是32位,而累加器本身是不指定数据类型。
具体执行时根据指令不同,决定运算的长度。
如果是整型数指令,比如 +I 那么就是ACCU1-L与ACCU2-L两个累加器的低16位看做整型数进行相加,结果放入ACCU1中。
因此无论是byte、word、dword或者INT、real在用L指令装载到累加器后,都不会影响+I指令的执行。
谢谢了,其实很多次编程就发现了这问题,每次数据类型出现不符合时,在数据精度要求不是很高的情况下,我一般用语句表蒙过去。