首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >数字逻辑基础二进制除法硬件设计

数字逻辑基础二进制除法硬件设计
EN

Stack Overflow用户
提问于 2014-12-13 00:37:36
回答 1查看 390关注 0票数 0

假设'a‘和'y’是具有std_logic_vector (7向下到0)数据类型的8位信号。如果信号被解释为无符号数字,则下面的赋值语句执行/8.EXPLAIN。Y <=“000”& a(7降到3);这个问题在RTL硬件设计第三章问题3.6中。我有这个问题的答案,那就是通过向右移三次,任何二进制值都可以被8整除,但我不知道如何被整除。有人能解释这个吗?

EN

回答 1

Stack Overflow用户

发布于 2015-02-02 04:06:11

看一下更简单的计算a/2的例子,向右移位意味着它们移动到一个位置,该位置的值是前一个值的一半。

示例:

代码语言:javascript
复制
110 (binary) = 6 (decimal)  shifted to  011 (binary) = 3 (decimal)

101 (binary) = 5                        010          = 2 (decimal).

最后一个示例显示5/2=2.5自动截断为2,因为最低有效位被移出。

要得到a/8,只需重复a/2三次(向下移动三个位置)。在硬件中,这通常是通过“移动导线”来完成的,在这种情况下,通过将位(7向下至3)连接到位置(4向下至0),并用零填充高三位。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27448074

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档