谁能解释下如何理解? 点击:126 | 回复:8



maoliuhai

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 20回
  • 年度积分:71
  • 历史总积分:125
  • 注册:2017年5月30日
发表于:2019-11-27 20:03:36
楼主

1.jpg

我想问下,这5行如何通俗的理解?为何要用字节交换?加指令?



楼主最近还看过



system521

  • [版主]
  • 精华:10帖
  • 求助:62帖
  • 帖子:1694帖 | 7856回
  • 年度积分:248
  • 历史总积分:54793
  • 注册:2004年7月13日
发表于:2019-11-28 11:04:04
1楼

楼主,先把图转过来,看着头晕。

请叫我王老湿

  • [版主]
  • 精华:0帖
  • 求助:0帖
  • 帖子:603帖 | 6481回
  • 年度积分:856
  • 历史总积分:153652
  • 注册:2011年4月25日
发表于:2019-11-28 11:26:00
2楼

应该是高低字节交换吧,有的时候采集的数据就是高字节低地址的情况,需要交换指令

你握不住的沙

  • 精华:0帖
  • 求助:1帖
  • 帖子:3帖 | 415回
  • 年度积分:47
  • 历史总积分:1539
  • 注册:2017年12月14日
发表于:2019-11-29 13:03:19
3楼

就高低直接交换啊,至于做什么处理,要结合后面了

关育谋

  • [版主]
  • 精华:3帖
  • 求助:21帖
  • 帖子:337帖 | 4597回
  • 年度积分:81
  • 历史总积分:28758
  • 注册:2004年5月28日
发表于:2019-11-29 13:29:30
4楼

通信返回来的一个寄存器(16位)

该寄存器数据的高8位保存在D303的低8位里

该寄存器数据的低8位保存在D304的低8位里

执行SWAP D303后寄存器数据的高8位就保持在D3903的高8位了

执行ADD D303 D304 D41后就把通信返回的寄存器数据完全保持到D41里了。

关育谋

  • [版主]
  • 精华:3帖
  • 求助:21帖
  • 帖子:337帖 | 4597回
  • 年度积分:81
  • 历史总积分:28758
  • 注册:2004年5月28日
发表于:2019-11-29 13:30:46
5楼


引用 请叫我王老湿 的回复内容: 应该是高低字节交换吧,有的时候采集的数据就是高字节低地...

-------------------------

通信返回来的一个寄存器(16位)

该寄存器数据的高8位保存在D303的低8位里

该寄存器数据的低8位保存在D304的低8位里

执行SWAP D303后寄存器数据的高8位就保持在D3903的高8位了

执行ADD D303 D304 D41后就把通信返回的寄存器数据完全保持到D41里了。

应该是这个意思吧!!

maoliuhai

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 20回
  • 年度积分:71
  • 历史总积分:125
  • 注册:2017年5月30日
发表于:2019-11-29 14:19:53
6楼

回复内容:

对:请叫我王老湿 应该是高低字节交换吧,有的时候采集的数据就是高字节低地址的情况,需要交换指令     内容的回复:

你好,问下如何知道自己采集的数据是高字节低地址的?

maoliuhai

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 20回
  • 年度积分:71
  • 历史总积分:125
  • 注册:2017年5月30日
发表于:2019-11-29 14:23:06
7楼

回复内容:

对:关育谋 通信返回来的一个寄存器(16位)该寄存器数据的高8位保存在D303的低8位里该寄存器数据的低8位保存在D304的低8位里执行SWAP D303后寄存器数据的高8位就保持在D3903的高8位了执行ADD D303 D304 D41后就把通信返回的寄存器数据完全保持到D41里了。     内容的回复:

我想问下一个寄存器有多少字节?我看上面通讯数据d300,,为何单取反 d303?有些不懂了,这种。

windy1234567

  • 精华:0帖
  • 求助:16帖
  • 帖子:24帖 | 76回
  • 年度积分:340
  • 历史总积分:686
  • 注册:2019年8月01日
发表于:2019-12-04 22:14:38
8楼

回复内容:

对:maoliuhai 回复内容:对:关育谋 通信返回来的一个寄存器(16位)该寄存器数据的高8位保存在D303的低8位里该寄存器数据的低8位保存在D304的低8位里执行SWAP D303后寄存器数据的高8位就保持在D3903的高8位了执行ADD D303 D304 D41后就把通信返回的寄存器数据完全保持到D41里了。     内容的回复:我想问下一个寄存器有多少字节?我看上面通讯数据d300,,为何单取反 d303?有些不懂了,这种。     内容的回复:

一个寄存器16位,一个字节8位,一个寄存器2个字节,只处理一部分数据有可能是接线接叉了,有不想换线,就只能换数据了


相关主题

官方公众号

智造工程师