当前位置:网站首页 > 技术博客 > 正文

verilog 移位运算



在Verilog HDL中,有两种运算符,分别是左移运算符和右移运算符。

使用方法为:a>>n,a<<n

a代表要进行移位的操作数,n代表要移几位。

如:

4'h1001<<1 = 5'h10010;

4'b1001<<2 = 6'b;

1<<6 = 32'b;

4'b1001>>1 = 4'b0100;

4'b1001>>4 = 4'b0000;

换一种说法。

移位操作符包括左移(<<),右移(>>),算术左移(<<<),算术右移(>>>)。移位操作符是双目操作符,两个操作数分别表示要进行移位的向量信号(操作符左侧)与移动的位数(操作符右侧)。算术左移和逻辑左移时,右边低位会补 0。逻辑右移时,左边高位会补 0;而算术右移时,左边高位会补充符号位,以保证数据缩小后值的正确性。

A = 4'b1100 ;

B = 4'b0010 ;

A = A >> 2 ;        //结果为 4'b0011

A = A << 1;         //结果为 4'b1000

A = A <<< 1 ;       //结果为 4'b1000

C = B + (A>>>2);    //结果为 2 + (-4/4) = 1, 5'b00001

// C = 5'b00010 + 5'b11111 = 6'b, 取五位有效数据

  • 上一篇: iconv_open函数
  • 下一篇: 网卡做bond0
  • 版权声明


    相关文章:

  • iconv_open函数2025-08-30 23:30:05
  • 51单片机流水灯程序通过位移2025-08-30 23:30:05
  • 服务器硬件介绍2025-08-30 23:30:05
  • 预测模型有哪些?2025-08-30 23:30:05
  • 爬虫用什么软件2025-08-30 23:30:05
  • 网卡做bond02025-08-30 23:30:05
  • clash全局模式2025-08-30 23:30:05
  • 网页爬虫系统有哪些2025-08-30 23:30:05
  • fpga 异步fifo2025-08-30 23:30:05
  • java string 数组2025-08-30 23:30:05