FPGA如何实现位左移位右移?
时间:10-02
整理:3721RD
点击:
现在准备采集AD值,18位的AD,如何将采到的值放入最低位,然后左移,再放入下一位?还有一个问题,这个语句能实现刚才所说的功能吗?a <= {a[16:0], ad};求大神求教!
a <= {a[16:0], ad}可以啊,这是比较好的写法,这个是左移,a <= {ad,a[17:1]}这个是右移!
此问答贴被选为3月21日的每日一答贴,活动详情见:http://bbs.elecfans.com/jishu_1111064_1_1.html 希望大家可以踊跃帮助坛友解决问题,谢谢。
哦哦!明白了,那这句话assign LED = ~{ key, key } ;为什么代表的是assign LED=~{key[3],key[2],key[1],key[0],key[3],key[2],key[1],key[0],};而不是将最低位放入新的KEY值呢?
还有为什么是a <= {ad,a[17:1]}而不是a <= {ad,a[16:0]}?
a <= {ad,a[17:1]}应该指的是ad放在最高位,然后右移,这样最低位就给覆盖了 当然就是a[17:1]
a <= {ad,a[16:0]}只是把ad放在最高位,没有进行移位操作
希望小编可以选择满意的答案作为最佳答案哦~
已经选好啦
看完以后就懂了。谢谢大家的讨论