你可以用1个字节存储多少个字符?

时间:2014-01-23 06:27:22

标签: mysql character byte

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

是什么

4 个答案:

答案 0 :(得分:35)

1个字节可能包含1个字符。 例如:  参考每个字符的Ascii值和&转换成二进制。  这是它的工作原理。

enter image description here 值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)非常常见。

TINYINT()

答案 3 :(得分:0)

是的,1个字节确实从ASCII集中编码了一个字符(包括空格)。 但是,在分配给字符编码的数据单元中,实际上通常可能需要多达4个字节。这是因为英语不是唯一的字符集。甚至在英文文档中,也经常代表其他语言和字符。这些的数量非常多,还有许多其他的编码集,您可能听说过,例如BIG-5,UTF-8,UTF-32。现在,大多数计算机都允许这些用途,并确保最少的乱码文本(通常意味着缺少编码集)。4个字节足以覆盖这些可能的编码。每个字符I个字节不允许这样做,并且在使用中,对于所有编码(不仅仅是ASCII),每个可能的字符通常更大4个字节。最后一个字符可能只需要一个字节即可运行或在屏幕上显示,但在相当庞大的全局编码“作品”中需要4个字节。