表情符号似乎使用 U+xxxxx 格式指定,
其中每个 x 是一个十六进制数字。
例如,U+1F615是“困惑的脸”的官方 Unicode Consortium 代码
由于我经常感到困惑,我对这个符号有很强的亲和力。
该U + 1F615表示是混淆我,因为我认为有可能为Unicode字符的唯一编码所需的8,16,24或32位,而5个十六进制数字需要5×4 = 20比特。
我发现这个符号在 bash 中似乎由一个完全不同的十六进制字符串表示:
$echo -n | hexdump
0000000 f0 9f 98 95
0000004
$echo -e "\xf0\x9f\x98\x95"
$PS1=$'\xf0\x9f\x98\x95 >'
>
Run Code Online (Sandbox Code Playgroud)
我本来希望U+1F615转换为类似\x00 \x01 \xF6 \x15 的东西。
我没有看到这两种编码之间的关系?
当我在官方 Unicode Consortium 列表中查找符号时,我希望能够直接使用该代码,而不必以这种繁琐的方式手动转换它。IE
我可以使用这个 20 位代码来确定 32 位代码是什么吗?
这两个数字之间是否存在关系?
当使用不同的术语代表不同的概念时,可以促进清晰的思维和清晰的沟通。
当两个概念非常相似但又不同时,这特别有用。
我们倾向于使用术语“命令”来表示两个非常相似但不同的概念。
概念 1:在命令行界面上输入的单个程序。
选项可能会传递给程序,但仍然只有 1 个程序正在使用。
例子):
$ ls
$ ls -alF
Run Code Online (Sandbox Code Playgroud)
这个概念被称为“命令”。
概念 2:在按 Enter 键指示 shell 处理之前在命令行界面上输入的任何内容。
例子):
$ ls -alF | head > output.txt; cat output.txt
Run Code Online (Sandbox Code Playgroud)
这个概念也称为“命令”。
即使根据前面的定义它包含 3 个不同的“命令”,情况也是如此。
对于那些希望使用不同术语来表示不同概念以便更精确地思考和交流想法的人来说,使用什么术语来表示这两个不同的概念最好?