问题标签 [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 投票
4 回答
3917 浏览

hex - 微控制器,如何在 LCD 上显示小数点?

我有一个微控制器,我正在对 LM335 温度传感器的值进行采样。我拥有的 LCD 库允许我显示 10 位 ADC 采样的十六进制值。10 位 ADC 给我从 0x0000 到 0x03FF 的值。

我遇到的麻烦是试图将十六进制值转换为普通人可以理解的格式。

任何线索将不胜感激,因为我完全迷失在这个问题上。

0 投票
0 回答
539 浏览

windows - 如何通过编程删除win7的“系统保留分区”?

我手动删除了分区。

  1. diskpart---> 将活动分区设置为 c:;
  2. bcdboot c:\windows /sc:
  3. 在启动时(从 dvdrom 或 Udisk 启动),diskpart---->删除分区覆盖

    但根据我的经验,第三步必须在启动时执行。如果系统已经启动,“删除分区覆盖”将失败,原因是“无法删除系统分区”。

    那么我的问题可能就变成了:有没有办法在用户登录win7时手动删除分区,否则VDS api可以解决问题吗?

    提前致谢, 张四光

0 投票
1 回答
817 浏览

python - 如何在python中将二进制/十进制/十六进制/八进制转换为二进制编码十进制(BCD)

我正在使用 python,需要找出以下内容来完成转换器,如何在 python 中将二进制/十进制/十六进制/八进制转换为二进制编码十进制 (BCD)

0 投票
2 回答
374 浏览

x86 - X86 处理器中的辅助标志

当低半字节产生到高半字节的进位时,辅助标志置位。例如:

在这种情况下,设置了腋窝进位。

我还听说这个进位用于在 BCD 加法过程中将 0110 添加到低位半字节,以获得正确的 BCD 答案。

但是考虑一下这种情况

在这种情况下,该半字节不生成进位,未设置辅助进位,但答案不是正确的 BCD 加法。那么是什么促使处理器纠正答案并得到正确的 BCD 答案呢?

0 投票
2 回答
23708 浏览

vhdl - BCD 到 7 段解码器

我刚开始 VHDL 编码,现在必须将 BCD 编码为 7 段解码器。我正在做一个行为设计(这是必需的),但现在我在如何编码显示时遇到了麻烦。

我知道如何只用一个输入和一个输出对这个解码器进行编码,但是我们有另一个名为 DIGEN_L 的输出用作我们的显示器。它是一个低电平有效总线输出,可启用我们板上 7 段显示器的每个数字。

他告诉我们只需将其编程为'01110,因此第四位数字始终打开,而其他三个数字关闭。

我不知道如何将 DIGEN_L 编码到我的代码中,也不知道上述语句的实际含义(代码方面)。任何人都可以帮忙吗?如果需要对此问题进行任何澄清,请发表评论,我将进行编辑。

这是我的代码:

0 投票
1 回答
470 浏览

boolean-logic - BCD 到 7 段解码器示意图:需要帮助适合页面

我现在正在研究 BCD 到 7 段解码器的原理图。我理解逻辑,但我需要帮助的是原理图的设计。

到目前为止,这是我的示意图。

如您所见,我只完成了三个输出,我需要再添加四个。我遇到的问题是一切都是如此垂直的,右边有很多空白。我希望能够在一页中容纳所有内容,而不必将其放大得很远,因为那样您就无法读取输入或输出。我想我只是觉得有一种更简单或更有效的方法可以做到这一点。在真值表中,我们使用 1010-1110 作为不关心,使用 1111 作为 0 表示所有段都关闭。我很感激任何帮助,谢谢!

0 投票
1 回答
2680 浏览

c++ - C++ 从 char 数组到 BCD

使用“Arduino 语言”(C++ 包装器)的 Arduino 项目 -

我有一个 8 字符数组,它以 24Hr 的形式提供时钟,{'H','H',':','M','M',':','S,'S'}我需要将其转换为 BCD。我以为我很好地理解了这个想法,但我得到了意想不到的结果。

作为一个基本示例,我想转换{'1','2'}为 BCD - 理论在左侧,我的代码结果在下图的右侧。我怀疑问题出buff[0]在 a 上'number char',我试过了,atoi(buff[0])但这仍然失败(我得到了相同的结果):

我怎样才能正确地做到这一点?我的基线代码是:

在此处输入图像描述

0 投票
3 回答
1691 浏览

encoding - 编程中如何使用 BCD 格式?

如果你觉得它很傻,请原谅我。我无法理解 BCD 的目的及其在编程中的实现?

到目前为止,我对 BCD 的理解是,它是一种以字节或半字节表示数据的内部方式。在一个简单的 C 程序中,我们声明变量 int、float 等,并根据需要对它们进行操作。在内部,它们可以表示为二进制数或 BCD。

现代计算器仅使用 BCD 格式。在 Intel 芯片中,该指令FBLD用于将打包的 BCD 值移动到 FPU 寄存器中。

我见过很少的汇编语言编程练习将 BCD 转换为十进制或其他方式。

它如何帮助程序员知道这一点?

BCD的知识对高级语言程序员有什么用处?

0 投票
1 回答
59 浏览

function - 可以使用 HEX 作为 BCD 函数吗?

我想知道是否可以使用 HEX 作为 BCD 函数?对于解码,我们可以将每个字符解码为十进制或字节..

0 投票
5 回答
6029 浏览

format - COBOL COMP-3 数字格式问题

我有一个混合了文本和数字字段的 cobol“磁带格式”转储。我正在将 C# 中的文件作为二进制数组(字节数组)读取。我有复印本,格式在文本字段上排列得很好。还有许多 COMP-3 字段。这些字段中的数据似乎与任何 BCD 格式都不匹配。我知道数据应该是什么,并且我有 COMP-3 的原始字节。我尝试先转换为 EBCDIC,但没有产生更好的结果。关于如何以其他方式在内部存储 COMP-3 编号的任何想法?以下是 PIC、原始数据和预期数字的三个示例。我知道我的字段位置是正确的,因为数字的两侧都有 alpha 数据,并且所有排列都正确。

第一个示例:字段的 PIC 为 9(9) COMP-3 数据有 5 个字节,十六进制值为 02 01 20 91 22 结果数据应为日期 (00CCYYMMDD)。这个特定的日期应该是 3-17-14。

第二个例子:字段的 PIC 是 S9(3) COMP-3 数据有 2 个字节,十六进制值是 0A 14 结果值应该在 900 到 999 之间 我的理解是“S”表示最后一个半字节应该是 0xC 或 0xD 来表示 + 或 -

第三个例子:字段的 PIC 是 S9(15)V99 COMP-3 数据有 9 个字节,十六进制值是 00 00 00 00 00 00 01 80 0C 结果值应该是 12.00

好的,感谢那些回应的人,因为他们为我指明了正确的方向。这确实是一个 ASCII/EBCDIC 表示问题。BCD 存储在 EBCDIC 中。使用 ASCII 到 EBCDIC 转换表会产生格式正确的 BCD 数字:

我用这个链接来映射数据:http ://shop.alterlinks.com/ascii-table/ascii-ebcdic-us.php

我的数据:0A 14 转换:25 3C(原来 253 是一个有效值,规范是错误的)C = +,一切都好

我的数据:01 80 0C(不包括前导零) 转换:01 20 0C 12.00 C = +,隐含 2 位格式,一切都好

我的数据:02 01 20 91 22 转换:02 01 40 31 7F 2014/03/17(F 是未使用的半字节),一切都很好