Verilog学习记录3——三目运算符

这篇具有很好参考价值的文章主要介绍了Verilog学习记录3——三目运算符。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

三目运算符

? : 三目运算符
assign a = b ? c : d

等同于
if(b == true)
	a = c;
else
	a = d;

进阶示例:

以牛客网 VL1 四选一多路器 为例
`timescale 1ns/1ns
module mux4_1(
input [1:0]d1,d2,d3,d0,
input [1:0]sel,
output[1:0]mux_out
);
reg [1:0] mux_out_reg;

always @(*)
begin
    case(sel)
    2'b00 : mux_out_reg = d3;
    2'b01 : mux_out_reg = d2;
    2'b10 : mux_out_reg = d1;
    2'b11 : mux_out_reg = d0;
    default : mux_out_reg = d0;
    endcase
end

assign mux_out = mux_out_reg;
endmodule

使用三目运算符写法:文章来源地址https://www.toymoban.com/news/detail-508764.html

`timescale 1ns/1ns
module mux4_1(
input [1:0]d1,d2,d3,d0,
input [1:0]sel,
output[1:0]mux_out
);

assign mux_out= (sel == 2'b00) ? d3 : ((sel == 2'b01) ? d2 : (sel == 2'b10) ? d1 : d0);

endmodule

到了这里,关于Verilog学习记录3——三目运算符的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • C++ 中的运算符,包括三目运算符,关系和逻辑运算符,地址运算符等等(C++复习向p8)

    加减乘除 ±*/:略 取模运算符 %: 比如 10 % 4=2 自增运算符 ++:给自己加1 自减运算符 —:给自己减1 “==” 是否相等 “!=” 是否不等 “” 是否大于 “” 是否小于 逻辑与,如果2个都是true,条件才true || 逻辑或,两个有一个是true,就是true ! 逻辑非,true变成false,false变成t

    2024年02月07日
    浏览(37)
  • 【C/C++】三目运算符的详细分析

            C/C++ 三目运算符是一种条件运算符,也被称为“三元运算符”或“条件运算符”。它的语法结构为  condition ? true_expression : false_expression ,表示如果  condition  为真,则执行  true_expression ,否则执行  false_expression 。         在本文中,我们将深入探讨 C/C++ 三

    2024年02月09日
    浏览(37)
  • 【Lua语法】算术、条件、逻辑、位、三目运算符

    加减乘除取余:+ - * / % Lua中独有的:幂运算 ^ 注意: 1.Lua中没有自增自减(++、–),也没有复合运算符(+=、-=) 2.Lua中字符串可以进行算术运算符操作,会自动转成number 如:“10.3” + 1 结果为11.3 大于 小于 大于等于 = 小于等于 = 等于 == 不等于 ~= 返回值依然是bool 注意: 1.与C

    2024年02月11日
    浏览(39)
  • C语言——三目运算符的进阶用法,比较三个或者四个数的大小

    1、三目运算符也叫条件运算符,结合方向是从右至左。 2、三目运算符仅此一个。 3、基本形式:      表达式1 ? 表达式2 :  表达式3 4、比较原理:表达式1是否为真,如果为真,执行表达式2,否则执行表达式3. 例:a = 4 3 ? 1 : 0 ;   a的值为1. 5、如果在表达式中含有其他运算符

    2024年02月08日
    浏览(32)
  • shell脚本学习记录1(运算符)

    我们可以在执行 Shell 脚本时,向脚本传递参数,脚本内获取参数的格式为: $n 。 n  代表一个数字,1 为执行脚本的第一个参数,2 为执行脚本的第二个参数,以此类推…… 以下实例我们向脚本传递三个参数,并分别输出,其中  $0  为执行的文件名(包含文件路径):  另

    2024年02月08日
    浏览(33)
  • Verilog HDL按位逻辑运算符及逻辑运算符

    单目按位与运算符 ,运算符后为需要进行逻辑运算的信号,表示对信号进行每位之间相与的操作。例如: reg [3:0] A,C ; assign C = A ; 上面代码等价于 C = A[3] A[2] A[1] A[0] ; 如果A = 4’b0110,C的结果为0 单目按位或运算符 | ,运算符后为需要进行逻辑运算的信号,表示对信号进行每位

    2024年02月16日
    浏览(25)
  • verilog运算符

    算数运算符 算数运算符 说明 + 加 - 减 * 乘 / 除 % 求模 进行整数除法运算时,结果值略去小数部分,只取整数部分; %称为求模(或求余)运算符,要求%两侧均为整型数据; 求模运算结果值得符号位取第一个操作数的符号位; 进行算数运算时,若操作数位 不定值X ,则 整个

    2024年02月07日
    浏览(29)
  • Verilog中的^~、~^、~&、~|运算符

    今天看书上的Verilog代码中,出现了运算符 ~^ ,从来没见过,搜了一些资料,记录一下。 ~^ 、 ^~ 作为二元运算符时,是同或; ~^ 、 ^~ 作为一元运算符时,是 缩减异或的取反 (感谢@smile、陌离老哥在评论区指正); ~ 只能作为一元运算符,是对缩减 结果的取反; ~| 只能作为

    2024年02月02日
    浏览(48)
  • Verilog语法(二)——运算符

    Verilog HDL 中支持多种运算符,包括算术运算符、比较运算符、逻辑运算符、位运算符等等。以下是一些常用的运算符及其用法。 Verilog 中的算术运算符包括加法、减法、乘法、除法、取模等。它们的用法与常见的编程语言类似,如: 加法:+ 减法:- 乘法:* 除法:/ 取模:

    2024年02月01日
    浏览(42)
  • Verilog运算符优先级

    0 ! ~ 1 * / % 2 + 1 3 4 = = 5 == != === !== 6 ~ 7 ^ ^~ 8 | ~| 9 10 || 11 ?: 从上至下优先级依次降低

    2024年02月16日
    浏览(27)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包