在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 1699|回复: 4

[讨论] 初学求问,编译器怎样解析这句?

[复制链接]
发表于 2016-12-12 15:07:26 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
assign {count,sum} = a + b + cin;
这是夏宇闻的verilog数字系统设计教程第22页的一个例子。请问,编译器vcs是怎样理解这句的?编译器怎么知道这是一个加法器,以及加法器的各个端口。
发表于 2016-12-15 15:40:16 | 显示全部楼层
Count是1bit 进位,SUM和A,B的位宽一样
 楼主| 发表于 2016-12-16 13:01:07 | 显示全部楼层
回复 2# huster

所以,这是一个编译系统内嵌的“固定语句”?对于 assign {count,sum} = a + b + cin;
编译器自动能识别这是一个加法器,等号左边花括号里第一个和第二个变量分别是进位输出和和,等号右边前两个识别为两个加数,最后一个识别为进位输入?
发表于 2016-12-16 14:23:58 | 显示全部楼层




   你这是扯蛋呢。。。
  编译器是根据符号识别的,你写了+,当然是作加法。至于左边是结果,右边是需要运算的表达 式,这是根据规则来定的。你写了=,就会这样识别。
  a/b/cin,只是当作3个加数,而不管哪个是加数,哪个是进位。

  结果赋值给左边时,根据规则,count在前,它就是高位(不单指一位,也可是多位),反正就是count和sum共同组成一个表达式,将运算结果赋给它们。
发表于 2017-2-15 13:27:56 | 显示全部楼层
楼上正解
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-6-15 18:06 , Processed in 0.019574 second(s), 7 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表