2336|2

69

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

炼狱传奇-移位和位拼运算符之战 [复制链接]

1. 移位运算符
移位运算符是双目运算符,将运算符左边的操作数左移或右移运算符右边的操作数指定的位数,用0来补充空闲位。如果右边操作数的值为X或Z,则移位结果为未知数X。
Verilog HDL中有两种移位运算符:<<(左逻辑移)和>>(右逻辑移)。
  例程1


    仿真图


    从仿真图,可以看出,每次a都向左边移动移位,后面补充0,直到把逻辑1溢出,后面就一直为0了。每次b都向右边移动移位,前面补充0,直到把逻辑1溢出,就一直为0了。
    总结:移位运算符的使用时,左移可以看成是乘以2,右移可以看成是除以2。所以移位运算符用在计算中,代替乘法和除法。尤其是除法,使用移位的方式,可以节省资源。


2. 位拼运算符
    位拼运算符是将多个小的表达式合并形成一个大的表达式,用符号{}来实现多个表达式的连接运算,各个表达式之间用“,”隔开。
例程2


仿真图


从图中可以看出,输出从左向右,每次0变换一个位置,到最右边时就会放返回最左边继续循环,使用拼位的运算符,就会使程序编写起来变得简单了。


代码的意思就是,每次把最低位放到最高位,让前三位放到后面,这样逻辑“1”就实现了移位,形成了循环。

此帖出自FPGA/CPLD论坛

最新回复

版主在学习FPGA?谢灵思的还是Altera的?  详情 回复 发表于 2015-2-15 19:59

赞赏

1

查看全部赞赏

点赞 关注
 

回复
举报

315

帖子

8

TA的资源

一粒金砂(中级)

沙发
 
版主在学习FPGA?谢灵思的还是Altera的?
此帖出自FPGA/CPLD论坛

点评

我是至芯的工程师,altera和赛灵思都在用,altera多一些  详情 回复 发表于 2015-2-16 10:11
个人签名给生活一个梦想,给奋斗一个方向!---淘宝搜索逸嵌电子工作室
 
 

回复

69

帖子

0

TA的资源

一粒金砂(中级)

板凳
 
奋斗吧小鱼儿 发表于 2015-2-15 19:59
版主在学习FPGA?谢灵思的还是Altera的?



我是至芯的工程师,altera和赛灵思都在用,altera多一些
此帖出自FPGA/CPLD论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表