signed | unsigned | |
>>(邏輯右移) | 左側補0 | 左側補0 |
>>>(算術右移) | 左側補符号位 | 左側補0 |
<<(邏輯左移)和<<<(算術左移) | 右側補0 | 右側補0 |
有符号數的>>>(算術右移)左側補符号位,其他移位都是補0 。
signed與unsigned不同類型的指派,單純的将對應的二進制複制過去,所謂的有符号資料和無符号數,本質上是對二進制的不同解釋而已。
reg signed [7:0] m =8'h80;
reg [15:0] n ;
initial begin
n=m;//預計16‘hFF80
end