发布于 2012-12-17 16:38:20
29楼
这个帖子很好
关于S7 200的模拟量处理 一般都要涉及到不同类型的数据转换问题
版主置评: ITD指令用于16位数据格式向32位数据格式的转变,掩盖了一些技术细节。ITD并不改变变量的值,初学者容易把它给忽略。S7200的符号数(可正可负)是用2进制补码方式表示,最高位是符号位,当数位长度发生变化时,符号位必须予以正确处理,否则会造成数值转换错误。本贴就是一个实例。
版主:你说得问题一直在困扰着我 ITD 即整数转换成双整数 是不是高16位就是低16位的符号位扩展呢?
列如:如果符号位为0 高16位也就都是0
如果符号位为1 高16位也就都是1
每天进步一点点