标签: 8-bit

在文本模式下打开文件可能会导致Python中的数据丢失:为什么?

codecs.open()提到的文件

即使未指定二进制模式,文件也始终以二进制模式打开.这样做是为了避免因使用8位值进行编码而导致数据丢失.

如何在文件中使用文本模式导致"数据丢失"?听起来像在文本模式下打开文件可能会将字节截断为7位,但我在文档中找不到任何提及:文本模式仅被描述为转换换行符的方式,没有提及某些潜在的数据失利.那么,文档的内容codecs.open()是什么?

PS:虽然可以理解的是,依赖于平台的换行编码的自动换行需要一些小心,但问题是关于8位编码的具体内容.我猜想只有一些编码与自动换行转换兼容,无论它们是8位编码还是7位编码.那么,为什么在codecs.open()文档中挑出8位编码呢?

python 7-bit codec 8-bit

4
推荐指数
1
解决办法
314
查看次数

如何将24位RGB转换为8位RGB

我想知道将24位RGB颜色(每种颜色8位)转换为8位颜色(2位蓝色,3位绿色,3位红色)的最佳方法是什么.我想要这样做的C代码.

c rgb colors 8-bit 24-bit

4
推荐指数
1
解决办法
1万
查看次数

8位和16位处理器如何通过两个寄存器访问更多RAM?

让我困惑的是8位计算机如何访问超过256字节的RAM.我知道它必须使用两个寄存器,但任何人都可以向我展示汇编代码中的这个样子吗?

喜欢:

mov a, [x]   ???
Run Code Online (Sandbox Code Playgroud)

ram assembly memory-address 8-bit

4
推荐指数
1
解决办法
2228
查看次数

代码有效,但抛出不兼容的指针类型警告

在学习C代码时尝试一下,我想测试一下.它按预期工作,但抛出警告

警告1来自不兼容指针类型的分配[默认启用]

代码很简单.我在这里所做的就是在atmega2560上切换PIN B7.我有一个LED挂钩,我可以看到它闪烁,所以我知道它按预期工作.

任何人都可以解释为什么我看到这个错误,即使它按预期执行?代码如下:

#include <avr/io.h>
#include <util/delay.h>

void main(void) {
    int *ptr;
    ptr = &PORTB; // This line throws the warning

    DDRB = (1 << 7);

    while(1) {
        *ptr = (1 << 7);
        _delay_ms(1000);

        *ptr = (0 << 7);
        _delay_ms(1000);
    }
}
Run Code Online (Sandbox Code Playgroud)

PORTB是一个8位寄存器,每个引脚有一位用于控制该引脚是高电平还是低电平.

现在,我很高兴它有效.但这些警告让我烦恼.

c pointers casting avr 8-bit

4
推荐指数
2
解决办法
1153
查看次数

JS:将整数转换为 8 位二进制的有效方法?

我知道这可以通过不同的方式完成,并且其他答案中已经提出了一些示例实现。

所以我要问的是在计算方式方面什么是最有效的

自我解释:

var num = 3;

console.log(num.toString(2));

//Outputs:   "11"

//Desired output:   "00000011";
Run Code Online (Sandbox Code Playgroud)

谢谢你。

javascript binary numbers tostring 8-bit

4
推荐指数
1
解决办法
3885
查看次数

C 8 位 16 位 32 位编译器之间的区别

这个问题可能是多余的,但我没有找到确切的答案。

C 8 位 16 位 32 位编译器之间的区别是什么。

不同编译器为相同代码生成的 .exe 有何不同.......

c compiler-construction 32-bit 16-bit 8-bit

3
推荐指数
1
解决办法
1万
查看次数

使用getImageData()时,html5画布总是返回8位颜色

我使用html5画布进行渲染和图像处理,对图像进行一些基本的编辑,而不是尝试使用getImageData(0函数来读取像素并做一些工作.我注意到了,无论源图像的深度是多少是(8位,16位,24位)getImageData()方法允许返回8位(256色).这是不可取的.我想getImageData(0方法吐出尽可能多的颜色.

我已经阅读了文档,画布应该能够处理你抛出的任何深度(比喻)但我无法看到任何地方设置更高的位深度

html5 canvas image getimagedata 8-bit

3
推荐指数
1
解决办法
3476
查看次数

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

我知道以前曾经问过这个问题,但我还没有找到解决办法.如果主题重复,我道歉,但我认为不是.

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

var firstNumber = 1118; // extracted from Uint16Array

var number8Bit1 = firstNumber & 0xff;
var number8Bit2 = ((firstNumber >> 8) & 0xff);

console.log(number8Bit1, number8Bit2); // 94, 4

var _firstNumber = (((number8Bit1 & 0xff) << 8) | (number8Bit2 & 0xff));

console.log(_firstNumber); // 24068 <-- 1118
Run Code Online (Sandbox Code Playgroud)

你会非常友善地帮助我.谢谢.

javascript 16-bit 8-bit

3
推荐指数
1
解决办法
4007
查看次数

4x8位int到32位整数

我有

_int8 arr[0] = 0;
_int8 arr[1] = 0;
_int8 arr[2] = 14;
_int8 arr[3] = 16;
Run Code Online (Sandbox Code Playgroud)

我需要使用as arr [0]作为第一部分<..>和arr [3]将其转换为一个_int32.最后它应该是

_int32 back = 3600;
Run Code Online (Sandbox Code Playgroud)

我应该使用位移或smth来达到这个目的吗?

c++ int 32-bit 8-bit

2
推荐指数
1
解决办法
3516
查看次数

为什么允许递归使 C 在 8 位 CPU 上变慢/效率低下

关于8 位 CPU 的编译器效率问题的答案似乎暗示允许递归会使 C 语言在这些体系结构上效率低下。我不明白递归函数调用(同一函数的)与各种函数的重复函数调用有何不同。

我想了解为什么会这样(或者为什么看似博学的人认为是这样)。我可以猜测,也许这些架构只是没有堆栈空间,或者推送/弹出效率低下 - 但这些只是猜测。

c recursion 8-bit

2
推荐指数
1
解决办法
70
查看次数