digital-logic相关内容

比较符号和溢出标志如何确定操作数关系?

基于比较有符号整数的跳转使用零、符号和溢出标志来确定操作数之间的关系.在带有两个有符号操作数的 CMP 之后,有三种可能的情况: ZF = 1 - 目的地 = 源 SF = OF - 目的地 > 来源 SF != OF - 目的地 我无法理解场景 2 和 3.我已经研究了可能的组合并看到它们确实有效 - 但我仍然无法弄清楚它们为什么有效. 谁能解释为什么 Sign 和 Ove ..
发布时间:2021-09-29 19:31:13 其他开发

Verilog减法和加法

我正在尝试在Verilog中编写加法和减法程序.问题是在执行加法或减法的模块的Verilog中实现和测试,然后Mux在让一个或另一个的结果通过之间进行选择,然后将所选结果从二进制解码为7段显示格式. Verilog模块将具有3个输入:两个名为A和B的4位输入,以及一个选择输入S.您的电路应将两个数字相加,并且还应从A中减去B(就像在代码中包含A-B一样简单).根据S的值(即是1还是0),您应该让加 ..
发布时间:2020-06-11 19:30:32 其他开发

具有行为架构的桶式移位器的VHDL代码结构

我正在尝试构建一个具有左右移位功能的16位桶形移位器.我在如何构造代码方面遇到一些问题,以便它可以执行我想做的事情. 我有一个决定方向的操作码输入,一个要移位的输入向量,一个输出向量和一个4位的位置向量. 我正在使用位置矢量以某种方式设置移位“级别".我要检查position(0),如果将其设置为1,则将其移动一个位置.然后检查position(1)并移动2个位置,position(3 ..
发布时间:2020-06-11 19:30:25 其他开发

自完成代码

https://electronics.stackexchange.com/questions/20537/how识别自我补码 我已正确阅读, 但是是否有必要从9中减去数字? 因为是8421系统 12 = 1100 如果我们减去15-12,则答案为3,即0011. 所以它也是自我补充... 我不明白,给定数字需要从哪个数字中减去,该数字是否必须为9? 解决 ..
发布时间:2020-06-11 19:29:57 其他开发

越位越大,如何设置进位标志?

我知道SUB期间的进位标志会在被减数小于subtrahend时设置,并且需要借位,但是找不到任何更详细的解释方法. 既然减法实际上只是加上二进制补码,CPU如何知道减法数更大并且发生借位了? 我唯一想到的是,只要将subtrahend转换为其2的补码,就可以在SUB期间自动设置Carry标志.然后,除非再次发生进位(每次被加数大于次要价位时,在进位时都应该这样做),否则它将保持打开状态 ..
发布时间:2020-05-06 09:09:23 其他开发

如何处理数字逻辑模拟器中的循环?

我正在开发一个数字逻辑模拟器,以便稍后在其中构建自己的CPU(这是一个长期的项目).对于没有循环的电路,例如fulladder,一切都很好.然后是像SR锁存器这样的电路,其中一个门的输入之一连接到另一个门的输出.所以我处于循环中,因为两个门都需要另一个门的输出来计算自己的输出. 解决此问题的最佳方法是什么?我以某种方式实现了该功能(当检测到循环时)将返回其最后的输出.或者,当该运行是第一次运行时 ..
发布时间:2020-05-04 05:12:35 其他开发