问题标签 [uint16]

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 回答
219 浏览

c++ - 减去 uint16_t 值有点困惑

所以我试图将两个 uint_16 值相减,每次我这样做时都会出错。

我知道您需要转换它,但是如何转换,并且这样做不会丢失数据。

0 投票
1 回答
73 浏览

c - 为什么 CDROM_TOC.Length 是 UCHAR[2] 而不是 WORD?

文档中,长度由两个无符号字节组成:

长度

指示目录数据的长度(以字节为单位)。此长度值不包括 Length 成员本身的长度。

当你WORD在 Little Endian 中形成 a 时,确实是正确的值,但他们为什么选择不WORD直接使用 a 呢?

0 投票
1 回答
153 浏览

python - 将 16 位无符号整数数组转换为位的快速方法

我有一个包含 16 位无符号整数的 3d 数组的大型数据集。我想将每个整数转换为位,然后只保留其 8:12 位为“0000”的位置到目前为止,我在三个阶段中使用了一种非常慢的循环方法:

如果您能建议我为此提供一个干净快速的替代方案,我将不胜感激

0 投票
1 回答
330 浏览

javascript - 使用原始 UInt16Array 值 javascript 渲染到画布

我正在尝试从 JavaScript 中的 Uint16Array 渲染图像。我没有收到任何捕获的错误,但没有渲染到画布上。

pixelDataReference 控制台输出到::

编辑_

那是我没有使用 4 通道颜色阵列,而是使用颜色的二进制通道。解决方案是将记录颜色的大小增加到 4 个字节长,并在主线程上查看为 1 个字节长。但是:如果我尝试使用
new Uint8ClampedArray(data.buffer) 访问 SharedMemory,我会收到以下控制台警告。

所以下一步是在主线程上创建临时数组;

但这实际上只是将信息从 sharedMememory 重新压缩到每次渲染的新内存插槽......有效地将相同的信息绘制到数组中两次。有没有更快的方法让我将 pixelData 从 sharedMemory 中取出并放到画布上?

0 投票
1 回答
147 浏览

python - 将数组显示为 .tif 文件中的图像,其值为 uint16

我有一个来自 CT 扫描的 .tif 文件,我想将其可视化为图像。后来用于训练卷积神经网络。

我想尽可能地保留原始格式。

哪个库可以显示这种图像?

我怎样才能在不丢失信息的情况下对其进行规范化?

0 投票
3 回答
403 浏览

c++ - 在 C++ 中将 IPV6 字符串转换为 uint16_t 数组

我有一个 IPV6 字符串作为下面的示例:

我正在尝试找到最干净的方法将其转换为包含 1 - 8 的 8 个值的 uint16_t 数组。

我不能使用 inet_pton()

我可以创建自己的解析函数,但是我试图让 sscanf 如下工作但没有成功。任何帮助,将不胜感激。编辑:值将始终在字符串中以十六进制格式表示。

0 投票
2 回答
99 浏览

c - C int 内存存储。最低有效位与最高有效位?

当我在内存中连续组合它们时,我希望以下两个uint8_t(0x00 和 0x01)uint16_t合二为一,给我一个 0x0001 的值。相反,我得到了 0x0100 = 256,这让我很惊讶。

谁能解释一下我目前对 C 内存的理解中遗漏了什么?谢谢!:-)

0 投票
2 回答
68 浏览

c - 在 C 中计算二进制文件的排序,仅包含 uint16_t 数字

我正在努力完成以下任务:编写一个带有两个参数的 C 程序:input.bin 和 output.bin。

  • input.bin 和 output.bin 是二进制文件
  • input.bin 最多可以包含 65535 个 uint16_t 数字
  • 文件 output.bin 必须由程序创建,并且必须包含 input.bin 中按升序排序的数字
  • 您的程序只能使用 256 KB RAM 和 2MB 磁盘空间

所以,我想我可以尝试用计数排序来做到这一点。这就是我所做的:

但不幸的是,它给了我分段错误,它不起作用,我不知道为什么:(

0 投票
2 回答
840 浏览

c++ - 将 uint8_t* 缓冲区转换为 uint16_t 并更改字节顺序

我想处理外部库提供的数据。

lib 保存数据并提供对它的访问,如下所示:

我知道当前数据包含两个uint16_t数字,但我需要更改它们的字节顺序。因此,数据总共有 4 个字节长,并包含以下数字:

66 4 0 0

所以我想分别得到两个uint16_t数字10900值。

我可以做基本的算术,并在一个地方改变字节顺序:

但是我想做一些更优雅的事情(如果有更好的方法来获取uint16_ts,那么向量是可替换的)。

我怎样才能更好地uint16_t创造uint8_t*?如果可能的话,我会避免使用 memcpy,并使用更现代/更安全的东西。

Boost 有一些不错的仅包含标头的字节序,它可以工作,但它需要一个uint16_t输入。

为了更进一步,Boost 还提供了用于更改字节顺序的数据类型,因此我可以创建一个结构:

是否可以安全地(填充、平台依赖性等)将有效的 4 字节长uint8_t*转换为datatype?也许有像这个工会这样的东西?

0 投票
0 回答
80 浏览

python-3.x - 使用 Python3 读取 Big-endian,uint18 二进制文件

使用 Python3 读取文件时遇到一些奇怪的问题。使用 Matlab 我有代码

数据现在是一些形状矩阵(10127、4096),这很好(后来我将其重塑为 10100x 4096 形式)

使用 Python3,我尝试使用不同的方法读取同一个文件,即

这是 在 Python 中读取二进制大端文件中给出的 。不幸的是,这会给出错误



我使用 Python3 的方法如下

我可以很容易地把它重塑成我想要的形状



现在问题/奇怪的部分是,y 轴上的比例完全不同。(x 轴看起来完全一样)。

使用 matlab (data(:,1)) 的第一个数据“行”的最大值为 118,而 Python 为 30208。

我有点担心,即使图形的形状相同(y 轴上的比例不一样),结果也不会完全正确。

有任何想法吗?