| |
---|---|
(点击题目可以在互联网中搜索该题目的相关内容) 日期:2006-8-30 23:50:34 来源: 作者: 点击: | |
我想把一个16进制的数16#A0存到VB100中,然后把它的地址给VD200,在把VD200中的数给VD300 我是用MOVB 16#A0 VB100 MOVD &VB100 VD200 MOVD *VD200 VD300 但是为什么VD300中存的数不是16#A0,而是一个很奇怪的数呢? 请大家告诉我为什么还有如何才能实现我的要求那 匿名回复: 老兄,不用加前面的那个东东,就可以了!用16进制监视再看看吧 匿名回复: 你要用B_I再用I_D 匿名回复: 数据类型不一致 匿名回复: 那应该怎么写呢?关注中~~` 匿名回复: 上述运算后vb300中的数是16#A0,由于VD300中字节的排列由高到低是VB300,VB301,VB302,VB303,所以VD300中的数是16#A0000000,作为带符号10进制整数则为-1610612736。 匿名回复: 你是用指针做的,所以你监控肯定看不到所谓的16#A0,而是跟楼上说的那样的 匿名回复: automatic_man: 我不是很明白,指针只是指的vb200, 执行这条语句以后MOVD *VD200 VD300 ,应该是vb200值给了vb300,vb201值给了vb301,vb202值给了vb302,vb203值给了vb303,那vb201,vb202,vb203中的数值不一定是16#00,所以结果不一定是16#A0000000吧,我不知道这样说对不对? 匿名回复: 谢谢大家,现在再看我当时怎么会问那么弱智的问题 匿名回复: 先变整形然后再变成双整 | |
上一篇: 语句表中的缩写 下一篇: PLC中浮点数的问题 |