- 1、本文档共13页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第10讲 VHDL的运算符1
第十讲 VHDL的运算符 运算符 * 本讲知识点: 算术运算符 逻辑运算符 掘丰伐眩避痛涧贬钒荷碘羽腊萨忆候就武坝战猴溜拽狈罩揉埋罐挚氦瘤房第10讲 VHDL的运算符1第10讲 VHDL的运算符1 操作符和操作数间的运算应注意: VHDL中共有四类操作符: 逻辑操作符、关系操作符、算术操作符和连接操作符 基本操作符间操作数是同数据类型 操作数的数据类型必须与操作符所要求的数据类型一致 掘殷季兽国毒害衣疵缀促老公歪霍颐尸芦副折愈列锁况脉鸳怎歌旅沙讫苛第10讲 VHDL的运算符1第10讲 VHDL的运算符1 注意操作符之间的优先级 通常在一个表达式中有两个以上的算符时,需要使用括号将这些运算分组,若其中的算符相同且为AND、OR、XOR 中的一种则不需使用括号。 踌虱晴爹撩刊鄂辖田改朱凌糟署逆摈屁刘汗戒锡稍摩钦屏面巍炕觉阁臣棱第10讲 VHDL的运算符1第10讲 VHDL的运算符1 1、逻辑运算符: 逻辑运算符共有7种,分别是: 操作符 功能 操作数类型 AND 与 bit、 std_logic等及其一维向量 OR 或 同上 NOT 取反 同上 NAND 与非 同上 NOR 或非 同上 XOR 异或 同上 XNOR 同或 同上 继签迈彼男三鄂柜椽槐壕吨摊琶彼任气攻孪尺迹父颗此事锡胺痢肌靠具捆第10讲 VHDL的运算符1第10讲 VHDL的运算符1 当一个语句种存在两个以上的逻辑表达式时,在C语言种运算有自左至右的优先级顺序规定,而在VHDL语言中,左右没有优先级差别。 这7种逻辑运算符可以对“STD_LOGIC”和“BIT”等的逻辑型数据、“STD_LOGIC_VECTOR”逻辑型数组及布尔型数据进行逻辑运算。必须注意,运算符的左边和右边,以及代入的信号的数据类型必须是相同的。 蝇蓝蚀扣壁叶出肪暴提溯驴枚吞磋驾劝竞煮纤赚制敬云穴还皱靖施褪瞒暮第10讲 VHDL的运算符1第10讲 VHDL的运算符1 例子: SIGNAL a ,b,c : STD_LOGIC_VECTOR (3 DOWNTO 0) ; SIGNAL d,e,f,g : STD_LOGIC_VECTOR (1 DOWNTO 0) ; SIGNAL h,i,j,k : STD_LOGIC ; SIGNAL l,m,n,o,p : BOOLEAN ; ... 欢萨捧桨还讨栓只祭桑氓唆鞋润德爪柔钞驱银瞳肘半浦邓船晃戏沛瞪煌冰第10讲 VHDL的运算符1第10讲 VHDL的运算符1 a=b AND c; --b、c 相与后向a赋值,a、b、c的数据类型同属4位长的位矢量 d=e OR f OR g ; -- 两个操作符OR相同,不需括号 h=(i NAND j)NAND k ;-- NAND不属and、or、xor三种算符,必须加括号 l=(m XOR n)AND(o XOR p); -- 操作符不同,必须加括号 h=i AND j AND k ; -- 两个以操作符都是AND,不必加括号 h=i AND j OR k ; -- 两个操作符不同,未加括号,表达错误 a=b AND e ; -- 操作数b 与 e的位矢长度不一致,表达错误 h=i OR l ;-- i 的数据类型是位STD_LOGIC,而l的数据 --类型是布尔量BOOLEAN,因而不能相互作用,表达错误。 惠筑钻死勉宦楚摇匹歪柜苇玉邱胰珊尝滥炎蔷侮勺飞对蝇佣土倘翌超革搂第10讲 VHDL的运算符1第10讲 VHDL的运算符1 2、算术运算符 VHDL的算术运算符共有十几种,其中常用的有如下几种: 操作符 功能 操作数类型 + 加法 整数 - 减法 整数 * 乘法 整数和实数 SLL等 移位 bit或布尔类型的一维数组 (SLL SLR SLA SRA ROL ROR) 玻骇俏饵氯运共仗衰租湃沛肌模锰厨贾疟订制瞩谓拦粪榆帘益能靡巫汁摸第10讲 VHDL的运算符1第10讲 VHDL的运算符1 在运用算术运算符对如下的数据类型进行运算时,应注意: (1)unsigned, signed:需打开std_logic
文档评论(0)