HDLbits刷题系列

文章讨论了Verilog编程中关于变量声明的细节,如input和output自动声明,避免使用wire,以及assign赋值时的常见错误。提到了按位或和逻辑或的区别,按位或给出最大值,逻辑或在两边均为0时输出低电平。文章还提醒注意未打包和已打包数组的使用场景。
摘要由CSDN通过智能技术生成

1.

 从这个图就能看出来,这个刷题网站到底有多么细节,在这道题中不用使用wire变量来声明变量,因为input和output 已经自动帮程序声明了,当然在之后的编程中,这也是很多工作者较多会出现的bug。中间又没有与门来隔断,所以之间赋值即可。下面是我写的代码

 系统给了一种代码方式也是非常的方便。

2.

声明变量注意点1:在你什么wire [3:0] A后,你不能继续在后面写 A [3:0]了,这是不合法的。

 

声明变量注意点2:还是那个问题,小心只是assign只会给你后面赋值1位,只是出错比较多的地方。 

注意点3: 未打包的数组和已经打包的数组,上面说一般只会引用在仿真中,而不会在硬件中。目前学习的过程中没有看到打包数列。

题目: 

解答: 

 3.题目

和上一题基本上差不多。

解答: 

4. 这一章主要是要分期逻辑或和按位或之间的区别。下面是题目:

波形图: 

可以看到按位或的话基本就是输出a和b之间的最大值,如果是逻辑或的话输出的就是高低电平,只有两边全是0的时候才会出现低电平。可能在Verilog中逻辑与比较常用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值