Verilog有符號數、無符號數之間的賦值與運算

不好说话甄發表於2024-07-14

賦值

高位寬向低位寬賦值,直接擷取地位進行賦值,不存在高位補全的問題。

低位寬向高位寬賦值,存在高位補全問題,規則如下:

  1. 有符號數向無符號數賦值:高位擴充有符號數的符號位;
  2. 有符號數向有符號數賦值:高位擴充有符號數的符號位;
  3. 無符號數向無符號數賦值:高位擴充0;
  4. 無符號數向有符號數賦值:高位擴充0;

運算

只有兩個運算元都是有符號數時,才會把兩個運算元都看作有符號數計算,否則只要有一個數是無符號數都會按照無符號數進行計算。

賦值時按照上述賦值規則進行賦值。

相關文章