首页新闻找找看学习计划

各位大哥 帮帮忙,为什么会错误

0
[待解决问题]

if (((loadnian[4]='1' or loadnian[3]='1' or loadnian[1]='1' or loadnian[0]='1') and (loadnian[2]='1' and loadnian[1]='0' and loadnian[0]='0')) or (loadnian[8]='1' and loadnian[7]='1' and loadnian[4]='1' and loadnian[6]='0' and loadnian[5]='0' and loadnian[3]='0' and loadnian[2]='0' and loadnian[1]='0' and loadnian[0]='0'))then

Error (10500): VHDL syntax error at test.vhd(332) near text "4"; expecting "]", or an identifier, or a string literal, or "return"

winner12的主页 winner12 | 初学一级 | 园豆:138
提问于:2018-12-04 14:03
< >
分享
所有回答(4)
0

if 里面的判断不应该是==吗

不辍 | 园豆:30 (初学一级) | 2018-12-04 15:39

vhdl语言是=

支持(0) 反对(0) winner12 | 园豆:138 (初学一级) | 2018-12-04 18:23
0

帮你格式化一下:

if 
(
    (
        (
           loadnian[4]='1' or loadnian[3]='1' or loadnian[1]='1' or loadnian[0]='1'
        ) 
        and 
        (
            loadnian[2]='1' and loadnian[1]='0' and loadnian[0]='0'
        )
    ) 
    or 
    (
       loadnian[8]='1' and loadnian[7]='1' and loadnian[4]='1' and loadnian[6]='0' and loadnian[5]='0' and loadnian[3]='0' and loadnian[2]='0' and loadnian[1]='0' and loadnian[0]='0'
    )
)
then
会长 | 园豆:5215 (大侠五级) | 2018-12-04 16:03
0

条件有问题哦!!
loadnian[1]='1' and loadnian[1]='0' 两个互斥的
loadnian[0]='1' and loadnian[0]='0' 两个是互斥的

题主是否真正理顺你的判断逻辑??

liqinghan | 园豆:219 (菜鸟二级) | 2018-12-04 16:23

我是在判断一个年份是不是闰年,年份的代码是11位2进制代码,不能用rem取余函数

支持(0) 反对(0) winner12 | 园豆:138 (初学一级) | 2018-12-04 18:25

@winner12: 那就得判断bit位,但是明显你的
(
loadnian[4]='1' or loadnian[3]='1' or loadnian[1]='1' or loadnian[0]='1'
)
and
(
loadnian[2]='1' and loadnian[1]='0' and loadnian[0]='0'
)
第一行的loadnian[1]='1' 和第二行loadnian[1]='0' 是互斥事件,不能在一起and的
第一行的loadnian[0]='1' 和第二行loadnian[0]='0' 是互斥事件,不能在一起and的,
这个判断本身就存在问题。

支持(0) 反对(0) liqinghan | 园豆:219 (菜鸟二级) | 2018-12-05 09:14

@winner12: 我觉的你还是定义一个integer类型的变量非信号,按照位移存储起来,然后用integer做运算,这样子也方便,代码维护也好。

支持(0) 反对(0) liqinghan | 园豆:219 (菜鸟二级) | 2018-12-05 09:21
0

为什么要把那么多判断放在一起啊

kuangx | 园豆:326 (菜鸟二级) | 2018-12-04 16:54

判断一个年份是不是闰年,不能用rem取余函数

支持(0) 反对(0) winner12 | 园豆:138 (初学一级) | 2018-12-04 18:25
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册