问题标签 [bcd]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
241 浏览

binary - 将 25 和 30 添加为二进制数

使用 8 位寄存器和有符号幅度表示。我认为 BCD 中的 25 是 010 0101,但我的教科书上写的是 001 1001。有人可以解释一下吗?

0 投票
4 回答
47357 浏览

binary - 在VHDL中将8位二进制数转换为BCD

该算法众所周知,您进行 8 次左移并在每次移位后检查单位、数十位或数百位(每个 4 位)。如果它们高于 4,则将 3 添加到组中,依此类推...

这是一个不起作用的基于流程的解决方案。它会编译,但输出不是我想要的。有什么想法可能是什么问题?

0 投票
2 回答
12108 浏览

assembly - ASCII 调整和小数调整指令如何工作?

我一直在努力理解来自 x86 汇编语言的 ASCII 调整指令。

我在互联网上看到所有信息告诉我不同​​的事情,但我想这只是以不同的形式解释的同一件事,我仍然不明白。

谁能解释为什么在 AL 的伪代码中AAAAAS我们必须从 AL 的低位半字节中加减 6?

有人可以解释一下AAM英特尔指令集手册中AAD的十进制调整指令伪代码也是如此,它们为什么会这样,它们背后的逻辑是什么?

最后,有人可以举例说明这些说明何时有用,或者至少在过去它们在哪些应用中有用。

我知道现在这些指令没有使用,但我仍然想知道这些指令是如何工作的,很高兴知道。

0 投票
1 回答
731 浏览

c - 在 C 中使用数组进行 BCD 转换

我正在做一个项目,我需要将一些长变量转换为 BCD。

我已经有一些有效的代码,但我觉得它可以改进......

我遇到的问题是它看起来混乱且效率低下。我认为不是为每个 BCD 单元(一、十等)使用多个变量,而是可以使用数组来执行相同的过程。我已经在代码中实现了这一点,但遇到了一些问题。该代码似乎只显示“Ones”等效元素。我也单步执行了代码,发现在转换过程中没有填充其他元素。关于发生了什么的任何指导?

数组实现:

PS。目前,我只是在玩弄想法。我计划在以后将代码划分为函数。

0 投票
1 回答
1468 浏览

c# - 使用 C# BCD WMI Provider 来安全启动 Windows

我在网上搜索了有关如何仅使用 C# 将 SafeBoot 导入 Windows 的解决方案。从 Vista 及以上版本开始,安全启动是使用 BCD 控制的。当然你可以使用命令行工具“bcdedit”:

但是我不想使用这种方法。所以我的问题是:

如何仅使用 C# 重新启动到安全模式?

我已经看过这个 SO post,它让我开始了。但我仍然缺少这个难题的部分。

任何帮助是极大的赞赏。=)

BCD WMI Provider Reference帮助不大。

0 投票
2 回答
78634 浏览

bcd - 自补码(Excess 3, 84-2-1, 2*421)

我在这里有一个主题来自“计算机组织与体系结构简介”主题中的“数字系统”

然后我遇到了这个话题,“自我补充代码”

它有3个部分,如下所示:

i)Excess-3(我理解这部分,因为它要求我们将 3 添加到 BCD)

ii)84-2-1(我不明白)

iii)2*421(我不明白)

我希望有人可以解释第二部分和第三部分的工作原理。

非常感谢。

0 投票
3 回答
3618 浏览

delphi - 将数据类型 ftFloat 转换为 ftBCD

如何将字段类型从 ftFloat 转换为 ftBCD;

我试过

但我得到了错误

有没有办法可以将 ftFloat 的所有数据集字段转换为 ftBCD ?

0 投票
2 回答
106 浏览

multiplication - 自制 BCD 类 - 倍增 BCD 错误

我正在制作 BCD 课程作为学校的练习,并且遇到了一些问题。下面是我的 BCD 课。

我的问题是 multiplyBCDs 方法。它适用于较小的数字,例如 4,329 * 4,但是,对于较大的产品,例如 4,329 和 29,385 的产品,我在 addBCDs 方法的第一行收到 NullPointerException 错误:

我已经尝试追溯问题,但找不到问题。为什么我会收到此错误,我该如何解决?

谢谢您的帮助!

0 投票
1 回答
1331 浏览

binary - Converting 8 bit binary to BCD value

I have spent countless hours on this and i just finally decided i really need some help..so here i am.

Basically what i am doing is taking an 8 bit input from an ADC and then converting this value to BCD to dsiplay on a seven segment board. SO here is my code so far:

Essentially what i am doing is taking an 8 bit value from the ADC then expressing it as a fraction of the max value ( which is 9) and then i have to convert this to BCD... but when i am running this code i am getting an error stating:

Line 38: Index value <-2> is out of range [0:2147483647] of array

I need the answer of the division to be a binary number (with decimals eg 11001.110) so that it would be accurate when i multiply it by 9...

0 投票
1 回答
1191 浏览

binary - 使用整数将 8 位二进制转换为 BCD

好的,大家好,我在 VHDL 中尝试做的是取一个 8 位二进制值并将其表示为 BCD,但有一个问题,因为这个值必须是最大输入 9 的一小部分。

1- 将输入转换为整数,例如 1000 0000 -> 128

2- 将整数除以 255 然后乘以 90( 90 以便我得到一个数字和小数点后的第一个数字都在小数点后)

例如 128/255*90 = 45.17(假设为 signal_in)

3.通过除以 20 提取 45 的两位数并将它们存储为单独的整数,例如我会使用类似的东西:

LSB_int = signal_in mod 10

然后我将信号除以 10,因此将其更改为 4.517,然后让它等于 MSB_int ..(这将截断小数并存储 4 正确)

4.将LSB_int和MSB_int都转换为4位BCD

..从那里我会是完美的......但遗憾的是我遇到了很多麻烦......使用不同的数据类型(签名无符号std_logic_vectors)和除法。所以我只需要帮助解决我思维过程中的任何缺陷和我应该做的事情做这个的时候要注意..

我实际上已经完成了我的代码并认为我保存了这个..但我没有,而且我仍然相信这个解决方案可以工作我会用我认为是我的旧代码来回复......只要我能记住这一切..

这是我的新代码的另一个问题..(只是为了表明我确实做了一些事情..) 在 VHDL 中将 8 位二进制数转换为 BCD