民國105年 第3梯次 數位電子甲級 學科

第52題

V e r i l o g 語言中,執行此敘述$ d i s p l a y ( " r e s u l t = % b " , ' x y = = = ' x…

題目

V e r i l o g 語言中,執行此敘述$ d i s p l a y ( " r e s u l t = % b " , ' x y = = = ' x y ) 之結果為

  1. (1) r e s u l t = z
  2. (2) r e s u l t = 0
  3. (3) r e s u l t = 1
  4. (4) r e s u l t = x

官方答案

(3) r e s u l t = 1

解析

Verilog 的 === 是「案例相等」運算子,比較時會把 x、z 當成確定的位元值,逐位進行比對,不會把不確定性傳遞到結果。此題兩個運算元的所有位元都是 x(未定值),逐位相同,因此比較結果為真;再以 %b 格式印出,即為 1 位元的 1,輸出 result=1。若改用 == 邏輯相等運算子,由於運算元含 x,結果會是不確定值 x,輸出才會是 result=x。因此答案為 3。

AI 參考解析(推得答案已與官方答案比對一致),非官方公告內容,僅供備考參考。

官方資料