新聞中心

EEPW首頁 > EDA/PCB > 設(shè)計(jì)應(yīng)用 > 煉獄傳奇-縮減運(yùn)算符之戰(zhàn)

煉獄傳奇-縮減運(yùn)算符之戰(zhàn)

作者: 時(shí)間:2016-10-16 來源:網(wǎng)絡(luò) 收藏

縮減運(yùn)算符是單目運(yùn)算符,也有與或非運(yùn)算。其與或非運(yùn)算規(guī)則類似于位運(yùn)算符的與或非運(yùn)算規(guī)則,但其運(yùn)算過程不同。位運(yùn)算是對(duì)操作數(shù)的相應(yīng)位進(jìn)行與或非運(yùn)算,操作數(shù)是幾位數(shù)則運(yùn)算結(jié)果也是幾位數(shù)。而縮減運(yùn)算則不同,縮減運(yùn)算是對(duì)單個(gè)操作數(shù)進(jìn)行與或非遞推運(yùn)算,最后的運(yùn)算結(jié)果是一位的二進(jìn)制數(shù)??s減運(yùn)算的具體運(yùn)算過程是這樣的:第一步先將操作數(shù)的第一位與第二位進(jìn)行與或非運(yùn)算,第二步將運(yùn)算結(jié)果與第三位進(jìn)行與或非運(yùn)算,依次類推,直到最后一位。例如:

本文引用地址:http://2s4d.com/article/201610/308330.htm

reg[3:0]B;

reg C;

C=B;

相當(dāng)于

C=((B[0]B[1])B[2])B[3];

下面我們編寫一個(gè)實(shí)例,通過仿真波形來驗(yàn)證運(yùn)算結(jié)果是否如我們所說。可綜合模塊如下:

編寫測試代碼如下:

仿真波形如下:

通過該波形可以看出,當(dāng)變量B的四個(gè)位全部為高時(shí),由于是“邏輯與”的運(yùn)算,所以最終輸出的變量C為高電平。

那么如果我們?cè)谧兞緽中加入一個(gè)零,結(jié)果會(huì)如何呢?我們仿真如下:

可以看到,如果變量B中存在零,那么輸出結(jié)果由于“邏輯與”會(huì)得到低電平。



評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉