Verilog的运算符及优先级 | 您所在的位置:网站首页 › 运算符优先级排序由高到低 › Verilog的运算符及优先级 |
Verilog运算符按功能可以分为八类。 1. 基本算数运算符 运算符中文名举例举例结果说明+加法运算符或正值运算符12+315同普通加法-减法运算符或负值运算符12-39同普通减法*乘法运算符12*336同普通乘法/除法运算符12.5/34结果为4,小数部分省去%模运算符12%40可整除,余数为0注:若进行基本运算操作时,某一操作数有不确定数X,则结果也为X; 2. 赋值运算符a. 连续赋值:用于对线网型变量进行赋值,而不能对寄存器变量进行赋值。 基本语法格式为:线网型变量类型 [线网型变量位宽] 线网型变量名; assign #(延时量) 线网型变量名 = 赋值表达式; 举例:wire [2:0] a; wire [3:0] b; assign a = 3'd4; assign b [3] = 1'b1; b. 过程赋值:主要用于两种结构化模块(initial 模块和always模块)中的赋值语句,在过程块中只能使用过程赋值语句,过程赋值语句只能对寄存器类型的变量(reg、integer、real、time)进行操作,经过赋值后,上面这些变量的取值将保持不变,直到另一条赋值语句对变量重新赋值为止。 基本格式为: 举例: reg c; always. @(c) begin c = 1'b0; end 3. 关系运算符在进行关系运算时,如果操作数之间的关系成立,则返回值为1;关系不成立,则返回0;若某一个操作数的值不定,则关系是模糊的,返回的是不定值X;关系运算符共有以下8种: >>== 2时,s = 1 ; 否则继续执行下一个条件选择选择;即当a < 0时,s = 2;若0 =等式= = , != , = = = , != =按位与&,~&按位异或^ , ~^按位或| , ~ |逻辑与&&逻辑或||选择? :低注:由上至下,优先级由高到低; 参考: 《无线通信FPGA设计》田耕 徐文波 张廷伟等. |
CopyRight 2018-2019 实验室设备网 版权所有 |