unicode
\u4e2d
ascii码
\u4e2d
\ -> 92
u -> 117
4 -> 52
e -> 101
2 -> 50
d -> 100
utf8
utf8是unicode另一种表式
#十六进制实体
中
4e2d十进制
#十进制实体
中
4e2d -> 20013
4e2d二进制
0100 1110 0010 1101
4 -> 0100
e -> 1110
2 -> 0010
d -> 1101
utf8
第一个字节:
- 前三位是
111
,表示这是一个三字节的 UTF-8 字符。 - 接下来的 4 位(xxxx)是 Unicode 码点
0100 1110 0010 1101
的前 4 位
第二个字节:
- 前两位是
10
,表示这是一个 UTF-8 的后续字节。 - 接下来的 6 位是 Unicode 码点接下来的 6 位,即
1110 0010
(从 Unicode 码点中跳过已经用于第一个字节的 4 位)。
第三个字节:
- 前两位是
10
,表示这是 UTF-8 的另一个后续字节。 - 接下来的 6 位是 Unicode 码点剩下的 6 位,即
1011 0101
。
1110 0100
10 1110 00
10 10 1101
三字节转换
二进制
11100100 10111000 10101101
16进制
E4 B8 AD
11100100 -> E4
10111000 -> B8
10101101 -> AD
url编码
%E4%B8%AD
ascii码
45 34 42 38 41 44
#unicode
\u0045\u0034\u0042\u0038\u0041\u0044
E -> 45
4 -> 34
B -> 42
8 -> 38
A -> 41
D -> 44
十进制实体
E4B8AD
45 -> 69
34 -> 52
42 -> 66
38 -> 56
41 -> 65
44 -> 68
C# byte(10进制)
228 184 173
十进制
11100100 -> 228
10111000 -> 184
10101101 -> 173
java byte
基于ISO-8859-1字符集(Java使用平台的默认字符集),用补码。
-28 -72 -83
对应的原码(即该负数的绝对值),我们需要执行以下步骤:
- 对除了符号位之外的所有位取反(即0变1,1变0)。
- 将取反后的结果加1。
11100100 -> 00011100 -> -28
10111000 -> 01001000 -> -72
10101101 -> 01010011 -> -83