找回密码
 注册
关于网站域名变更的通知
查看: 353|回复: 1
打印 上一主题 下一主题

转——缩减运算符之战 

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-4-19 09:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

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

x
转——缩减运算符之战        

' M4 p; b) J6 B3 `# R1 D  |3 Y5 y. q& m
9 [. Q8 T9 h; g# l0 Z缩减运算符是单目运算符,也有与或非运算。其与或非运算规则类似于位运算符的与或非运算规则,但其运算过程不同。位运算是对操作数的相应位进行与或非运算,操作数是几位数则运算结果也是几位数。而缩减运算则不同,缩减运算是对单个操作数进行与或非递推运算,最后的运算结果是一位的二进制数。缩减运算的具体运算过程是这样的:第一步先将操作数的第一位与第二位进行与或非运算,第二步将运算结果与第三位进行与或非运算,依次类推,直到最后一位。例如:
8 h) e: z' y$ b/ t. `( j$ @3 }$ L) H: I* F3 O6 y6 ~! i3 o6 D
( N( @( W2 |7 F  Z) |
reg[3:0]B;
reg C;
C=&B;
相当于
C=((B[0]&B[1])&B[2])&B[3];
: }9 m; g# R, }4 p- ]+ ?% l4 u- B
下面我们编写一个实例,通过仿真波形来验证运算结果是否如我们所说。可综合模块如下:

+ I* \7 j3 G4 T3 Y
    编写测试代码如下:

; e8 y9 ^  N$ d& X: ]. q
9 H  n+ c+ {# y" r
    仿真波形如下:
% l2 l$ e: I# x  z& u: i
3 F7 {- y5 z5 M& h. Q
    通过该波形可以看出,当变量B的四个位全部为高时,由于是“逻辑与”的运算,所以最终输出的变量C为高电平。
    那么如果我们在变量B中加入一个零,结果会如何呢?我们仿真如下:

; _2 v5 u/ Z5 ^1 z* X  h: |

( P, }' y8 n' k- ~" K' b
    可以看到,如果变量B中存在零,那么输出结果由于“逻辑与”会得到低电平。

( I" ]( T' b5 z3 ~; m0 E

该用户从未签到

2#
发表于 2019-4-19 18:07 | 只看该作者
thanks for sharing
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-10-9 01:03 , Processed in 0.125000 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表