发布于 2014-10-11 17:08:27
9楼
首先计算字节地址BYTE_NUMBER = [(输入的整数/8)-1],再计算位地址BIT_NUMBER = [(输入的整数)-(BYTE_NUMBER*8+1)],最后"BYTE_NUMBER +1" SLD3 + "BIT_NUMBER"就得出了“DBX_ POINTER”也就是输入的整数对应的位地址DB#.DBX【DBX_ POINTER】,但是这里还有一个问题就是西门子数据结构的问题,也就是存储数据高位对应的是实际地址低字节,所以输入整数1对应的实际地址是DBX1.0而不是DBX0.0,要想得到楼主所想的那样,还要用高低字节交换指令把你数据块设定的地址转换一下就得出了楼主所要的结果了。