问题标签 [8-bit]

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 投票
2 回答
11629 浏览

python - 为什么 SIFT 不适用于使用 Python 的 OpenCV 中的 8 位图像 (JPEG)?

我对所有其他 24 位 JPEG 图像都使用了 SIFT,没有任何问题,但是,8 位图像总是给我以下错误。

函数 cv::SIFT::operator () 中的图像为空或深度不正确 (!=CV_8U)

有谁知道如何处理它?

这是我的代码:

然后弹出错误“图像为空或函数 cv::SIFT::operator () 中的深度不正确 (!=CV_8U)”。

0 投票
2 回答
6581 浏览

audio - 将音频转换为 8 位签名 PCM

我有一个 .mp4 音频文件,我想使用该库将其转换8-bit unsigned PCM为 Arduino Uno 的格式。TMRpcm

它也可以是一个.wav文件。无论如何,我尝试了很多事情都无济于事。我得到的最接近的是使用NIST Sphere编解码器的 Audacity。我试图用 来做到这一点FFmpeg,但它只支持de muxingNIST Sphere文件。如何在 Mac OS X (10.10.2) 上将音频转换为这种格式?

0 投票
1 回答
454 浏览

email - 如何在 8 位 mime 中处理 >1000 个字符行

使用 8BITMIME smtp 时,您可以在 Mime 消息中设置 Content-Transfer-Encoding: 8bit 并发送不编码的文本。

除了,还有 1000 个八位字节的行限制(加上行尾都应该是<CR><LF>

当我的库从用户那里获取任意 UTF-8 数据时,我应该如何拆分行?有什么方法可以安全地拆分 1002 个八位字节的行吗?那么 1002 个八位字节的单词(没有空格)呢?

在 Quoted-Printable 你可以做=<CR><LF>,8bit 有类似的东西吗?

0 投票
1 回答
5701 浏览

javascript - 如何在 Javascript 中将两个 8 位转换为 16 位,反之亦然?

我知道以前有人问过这个问题,但我无法找到解决方案。如果主题重复,我深表歉意,但我认为不是。

我从 Uint16Array 中提取了一个数字以转换为一对 8 位数字并且做得很好,但是当我想从这两个 8 位数字转换为第一个数字时,我无法得到它。

你会很乐意帮助我的。谢谢你。

0 投票
10 回答
2357 浏览

algorithm - tinyAVR:最著名的 8 位和 16 位因子乘法例程?

“比 avr200b.asm 快”?mpy8u来自 avr200b.asm 的-routine用于Atmel 的 AVR 系列的那些不执行任何MUL指令的处理器似乎非常通用,但是mpy16u对于将两个较低的结果字节旋转 16 次而不是 8 次看起来很草率。Antonio提出了一个快速的 16×16→16使用 64 周期最坏情况的无符号乘法,不包括调用/返回开销。
我随意建议优化目标为最坏情况周期数字数(RAM 和闪存)、寄存器使用情况预期周期数,按优先级递减的顺序排列。
(有减少核心AVR(“个位数”-ATtiny,10/20/40),包括时间在内的差异,我建议忽略。)

(注意:不要认为这里的任何主张都是理所当然的,至少在没有独立确认的情况下是这样。)

目前最广为人知的 8×8→8/16、16×16→16/32 和 16×8→16/24 位的 AVR 乘法例程是MUL什么?

0 投票
1 回答
2494 浏览

pic - PIC18F SPI 从机中断以 4 MHz 问题接收多个字节

我正在编写代码以在 PIC18F2680 微控制器上的中断服务例程中接收 SPI 数据,该微控制器以 40MHz 运行,需要从另一个微控制器接收 2 个字节(16 位)的数据。PIC 只接收数据(被动侦听),不会将任何内容发送回发送者。使用 MISO 和设备上的 SCLK 的两条数据线。在 SPI 通信中没有使用从机选择,并且监听命令不需要 MOSI,只有从机响应。

在设计时我没有意识到 SPI 数据包一次发送 16 位,否则我会使用不同的微控制器。

我想看看是否有办法在 SPI ISR 中读取两个连续字节而不会丢失任何数据。我目前的实现:

但是,这似乎得到了一些正确的数据,但丢失了很多其他字节。有没有更好的方法来实现这一点,还是我使用 8 位 MCU SOL?

谢谢,

约翰

0 投票
1 回答
1201 浏览

c++ - 8bpp BMP - 将像素引用到颜色表;只想读取一行像素;C++

我在读取 8 位灰度 bmp 时遇到问题。我能够从标题中获取信息并读取调色板,但我无法将像素值引用到调色板条目。在这里,我找到了如何读取像素数据,但实际上并没有找到如何在 bmp 带有调色板的情况下使用它。我是初学者。我的目标是一次只读取一行像素。

代码:

我在 test.txt 中得到的似乎很好——第一个值从 0 0 0 0 到 255 255 255 0(调色板),下一个值从 0 到 255(调色板小)。

问题是我无法将像素值引用到颜色表条目。我的应用程序崩溃了,症状可能表明它试图使用表格中一些不存在的元素。如果我理解正确,带有颜色表的 bmp 像素应该包含许多颜色表元素,所以我不知道为什么它不起作用。我请求你的帮助。

0 投票
1 回答
509 浏览

c++ - 对同一数据有 8 位和 16 位视图?

问题

我正在使用 C++ 开发视频游戏模拟器。

内存由一组 uint8_t 值表示。通常,我还需要以 16 位值(两个连续的 8 位值)访问此内存的内容。

我有一些看起来像这样的东西:

例如,如果内存包含 [0xC0, 0xFF, 0x66, 0xAA...] 那么[]将返回:

mem[0] -> 0xC0 mem[1] -> 0xFF mem[2] -> 0x66

并将()返回(取决于系统字节序):

mem(0) -> 0xFFC0 mem(1) -> 0x66FF mem(2) -> 0xAA66

这些访问方法会被调用很多。我想利用指针()来快速访问。我不想通过移位和 |'ing 8 位对来计算 16 位值(我不能,因为该方法必须返回一个引用)。

我的问题: C++ 中有没有办法在同一个缓冲区上有不同的视图?指向相同数据的 8 位视图和 16 位视图将是理想的。

(例如,JS ArrayBuffer API提供了 DataView,它可以做到这一点。也许有一个聪明的技巧可以用 C++ 中的指针干净地实现这一点?)

尝试#1

我的第一个猜测是使用某种联合:

但随后只能访问偶数字节的 16 位值:

mem.words[0] -> 0xFFC0

mem.words[1] -> 0xAA66 // Should be 0x66FF :(

尝试#2

一个可行的解决方案是为偶数和奇数地址添加两个额外的 16 位指针,以处理重叠

它工作得很好,但看起来很复杂,我相信还有更优雅的解决方案。

谢谢。

0 投票
1 回答
174 浏览

assembly - 8 位 Z80 处理器中 LD 指令中的值表示什么?

我很难理解这段代码中发生的事情:

ADD以及在指令之后将哪些标志设置为 1 。

基本上,我不知道寄存器中存储了什么值B

我找不到任何信息130 inLD B, 130是指“1000 0010”还是“0 1000 0010”(所以随后我们必须摆脱 MSB/LSB - 我不知道是哪一个)。

因此,我不确定存储在A.

0 投票
2 回答
1730 浏览

java - 十六进制:在 int 中设置一个 8 位字节

在 Java 中:

我有一个十六进制形式的 32 位数字。我得到了一个特定的字节数(0-3,0 表示最低有效字节),并告诉我需要用另一个字节替换该字节,该字节也以十六进制形式提供给我。例如:32 位数字 0xAAA5BBC6,将字节 1 替换为 0x17 得到 0xAAA517C6。

我不能使用任何强制转换、乘法、加法、减法或条件。我无法编写任何辅助方法,也无法从此文件或其他文件中调用任何其他方法来实现任何方法。此外,这必须写在一行代码中。

我相信我应该使用遮罩,但我不知道从哪里开始。给定一个字节数,如何更改所有 8 位。切换一个关闭或打开很容易,但是将所有 8 位切换为某个值?