1 byte = 8 bits
那么,这是否意味着1个字节只能容纳一个字符? E.g:
"16" uses 2 bytes , "9" uses 1 byte , "a" uses 1 byte, "b" uses 1 byte
如果tiny int
的范围是0-255,这是否意味着它可以用255个字符存储?
什么是
的存储空间1. tiny int (1)
2. tiny int (2)
range 0-10
答案 0 :(得分:35)
1个字节可能包含1个字符。 例如: 参考每个字符的Ascii值和&转换成二进制。 这是它的工作原理。
值255存储为(11111111)基数2。 访问此链接以了解有关二进制转换的更多信息 http://acc6.its.brooklyn.cuny.edu/~gurwitz/core5/nav2tool.html
微小Int的大小= 1字节(-128到127)
Int = 4字节(-2147483648至2147483647)
答案 1 :(得分:1)
2 ^ 8 = 256个字符。二进制中的字符是8(0或1)的系列。
|----------------------------------------------------------|
| |
| Type | Storage | Minimum Value | Maximum Value |
| | (Bytes) | (Signed/Unsigned) | (Signed/Unsigned)|
| | | | |
|---------|---------|-------------------|------------------|
| | | | |
| | | | |
| TINYINT | 1 | -128 - 0 | 127 - 255 |
| | | | |
|----------------------------------------------------------|
答案 2 :(得分:0)
TINYINT
数据类型的语法为TINYINT(M)
,
其中M
表示最大显示宽度(仅在MySQL客户端支持时使用)。
(m)表示SELECT语句中的列宽;但是,它 不控制该字段的可接受数字范围。
TINYINT是8位整数值,BIT字段可以存储在1位,BIT(1)和64>位之间,BIT(64)。对于布尔值,BIT(1)非常常见。
答案 3 :(得分:0)
是的,1个字节确实从ASCII集中编码了一个字符(包括空格)。 但是,在分配给字符编码的数据单元中,实际上通常可能需要多达4个字节。这是因为英语不是唯一的字符集。甚至在英文文档中,也经常代表其他语言和字符。这些的数量非常多,还有许多其他的编码集,您可能听说过,例如BIG-5,UTF-8,UTF-32。现在,大多数计算机都允许这些用途,并确保最少的乱码文本(通常意味着缺少编码集)。4个字节足以覆盖这些可能的编码。每个字符I个字节不允许这样做,并且在使用中,对于所有编码(不仅仅是ASCII),每个可能的字符通常更大4个字节。最后一个字符可能只需要一个字节即可运行或在屏幕上显示,但在相当庞大的全局编码“作品”中需要4个字节。