在unicode标准中,为什么U+12ca = 0x12ca? 0从哪里来,0x12ca = 4810十进制是怎么来的

In unicode standard, why does U+12ca = 0x12ca? Where does the 0 come from and how does 0x12ca = 4810 decimal

我正在学习 Unicode 基础知识,我看到了这段话:

"Unicode 标准描述了字符是如何用代码点表示的。代码点是一个整数值,通常以 16 进制表示。在标准中,代码点使用 符号 U+12ca 表示值为 0x12ca 的字符(十进制为 4810)."

我有三个问题。

  1. ca 代表什么?在某些地方,我看到它只是写成 U+12。有什么区别?
  2. 0x12ca中的0是从哪里来的?这是什么意思?
  3. 值0x12ca如何变成十进制的4810?

这是我第一次 post 在这里,非常感谢任何帮助!祝大家有个愉快的一天!!

  1. what does the ca stand for?

代表十六进制数ca

In some places I've seen it written as just U+12. What's the difference?

这是一个错误,或者 U+12 是另一种(IMO 草率/模棱两可的)写作方式 U+0012 ...这是与 U+12ca 不同的 Unicode 代码点。

  1. Where did the 0 in 0x12ca come from? what does it mean?

这是一种不同的表示法。这是各种编程语言中使用的十六进制(整数)文字表示法;例如C、C++、Java 等等。它代表一个数字……不一定是 Unicode 代码点。

0x只是符号的一部分。 (它“来自”各自的语言规范......)

  1. How does the value 0x12ca become 4810 decimal?

0x表示剩下的是十六进制数字(又名16进制),其中:

  • aA代表10,
  • bB代表11,
  • cC表示12,
  • dD代表13,
  • eE代表14,
  • fF表示15,

所以 0x12ca 是 1 x 163 + 2 x 162 + 12 x 16 1 + 10 x 160 ... 是 4810.

(自己算一下,10进制和16进制之间的转换是简单的高中数学。)