V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  ipwx  ›  全部回复第 58 页 / 共 200 页
回复总数  3991
1 ... 54  55  56  57  58  59  60  61  62  63 ... 200  
2021-08-19 10:00:17 +08:00
回复了 KousukeSakurako 创建的主题 Go 编程语言 golang.org 自动跳转到 golang.google.cn
估计是因为服务器是谷歌的核心服务器,ip 被墙了。
2021-08-19 09:59:58 +08:00
回复了 KousukeSakurako 创建的主题 Go 编程语言 golang.org 自动跳转到 golang.google.cn
顺便 golang.org 实测不挂梯子无法访问。
2021-08-19 09:59:33 +08:00
回复了 KousukeSakurako 创建的主题 Go 编程语言 golang.org 自动跳转到 golang.google.cn
?国内无法流畅访问国外的东西,所以谷歌在 google.cn 这个墙内备案的域名上给一个镜像,这不是很好吗
2021-08-18 10:32:05 +08:00
回复了 nowheretoseek 创建的主题 问与答 操作系统的设计中,编码是”热插拔“的吗?
13L 说得对。 对 @nowheretoseek 楼主无力吐槽的主要原因是,tm 一堆根本就不对头的假设,然后推出了让人摸不着头脑的结论。
2021-08-18 10:31:15 +08:00
回复了 nowheretoseek 创建的主题 问与答 操作系统的设计中,编码是”热插拔“的吗?
我 tm 真不知道楼主在一本正经地纠结什么。
----

都说了 Unicode 本质是字符 <=> 数字,你增加字符不就是在码表中继续加字符么?本来就没有 New Unicode,因为每过几年 Unicode 就会发布新的码表,因为增加修订了什么东西。你可以说每一版都是 New Unicode 。

再说一遍 Unicode 是字符 <=> 数字,tm 根本就没规定是 32 位整数。地球文字只有十万多字符,你 20 亿还不够外星文明用,那就用 64 位整数吧(摔)
----

再说编码。UTF-8 的规则几乎可以无限扩展单字符长度。在大部分程序看来都是直接用库解析这坨二进制,比如 libICU 。或者干脆不理这坨东西到底是什么,因为 UTF-8 的编码方式保证了它具有替换安全性(你把它当成二进制 char[] 替换一个合法的子串,不会产生非法的串)。替换、分割、合并,所有这些普通字符串操作都是安全的。这意味着 regex 也是安全的,以及所有一般的字符串算法都是安全的。这 tm 还能有什么问题?

所以为啥用 UTF-8 替代 GBK 这种字符集?因为 GBK 没有局部替换的安全性。
2021-08-18 00:40:33 +08:00
回复了 nowheretoseek 创建的主题 问与答 操作系统的设计中,编码是”热插拔“的吗?
@nowheretoseek

0. 首先楼主要明白一点:字符编码只是一种把文本变成二进制串再变回来的规范。字符串本质都是二进制串。不同的编码能产生不同的二进制串,但是都是二进制串。

这里吐槽一下,这就是没有在 C/C++ 里面摸爬滚打过的坏处了。char* 数组、'\0' 结束符,有这些基础来解释二进制字符串就很容易理解。不然都是从 Java/C#/Python3 学起的,我 tm 根本不知道怎么解释这个常识。

1. 据我所知,Linux 大部分系统核心功能没考虑啥编码的事情。包括文件系统在内都是直接操作二进制串的。像 ext4 这种文件系统,似乎你可以把任何二进制串当做文件名,甚至是不合法的乱码二进制串(反正它不在意,它只在意这个二进制字符串)。

2. 有些文件系统似乎会考虑编码,比如 APFS,NTFS 。

3. Unicode 只是个字符映射表,它的规范是字符 <=> 数字的映射关系。具体怎么变成二进制串有很多种方法

3.1 UTF-8:一个 Unicode 字符被映射成 1~6 个二进制 8 位数字不等。建议楼主学习一下这个编码方法,因为它可以直接解答楼主的帖子里面的所有问题。理论上这种编码方法可以类推到任何长度的可变长字符,比如 1~100 个二进制 8 位数字。

3.2 UTF-16:一个 Unicode 字符被映射城 2 个或 4 个二进制 8 位数字。这个方案应该也能直接类推成任意 2K 个字符。建议楼主学习。也可以解决楼主的所有疑问。

3.3 UCS-2:早期最多能表示几万个字符的 Unicode 编码方案,每个字符固定映射城 2 个二进制 8 位数字。在更小的字符集上和 UTF-16 相同。可能很多人第一反应的 Unicode 就是这种编码方案,但是实际上不应该用这个编码处理很多事情,会造成字符截断问题。

3.4 UCS-4:每个字符固定映射城 4 个二进制 8 位数字。对于地球字符而言这已经足够了。Python3 用的是这个编码。

4. 所以楼主的问题实在是无力吐槽,因为 UTF-8/UTF-16 已经满足楼主的问题了。
2021-08-17 23:51:21 +08:00
回复了 484A4B 创建的主题 程序员 面对互联网公司对用户隐私的手越伸越长,我们能做些什么?
事实上是大家真的不在乎
2021-08-17 23:49:07 +08:00
回复了 nowheretoseek 创建的主题 问与答 操作系统的设计中,编码是”热插拔“的吗?
嘈点太多以至于无力吐槽
2021-08-17 16:09:51 +08:00
回复了 nowheretoseek 创建的主题 问与答 自定义词表的 base64 编码容易被解码吗?
p.s.2 比如这个,是给凯撒密码自动解密的:

https://quipqiup.com/
2021-08-17 16:09:28 +08:00
回复了 nowheretoseek 创建的主题 问与答 自定义词表的 base64 编码容易被解码吗?
p.s. 第三步甚至可以通过预训练一个 language model 然后把你的解密结果丢进去看似然。把似然最高的比如 20 组 base64 加密方法给你挑出来。
2021-08-17 16:07:02 +08:00
回复了 nowheretoseek 创建的主题 问与答 自定义词表的 base64 编码容易被解码吗?
和普通密码的字频攻击一样的处理方法。

1 、统计普通文本 base64 以后的字频。
2 、根据你这修改版 base64 的字频来探测可能的匹配
3 、验证解码结果。
@Sanko 全都塞标准库,那运行时和编译速度该多慢啊。当然要第三方独立的库啊

一个算法几 kb,但像你说的这俩算法都不够通用啊,不常用啊。按你这个标准筛选,找出来的算法都加进去,标准库可以多几百兆,编译速度可以下降一个数量级啊。

明明手写也就 50 行代码的事情。。。
如果这两个算法也算是常用需要进库函数,那么有很多很多同样“常用”的算法也得进。

说白了这俩就是特殊的动态规划而已啊,随手写一个。又不够常用,进库函数没意思。
2021-08-15 00:13:59 +08:00
回复了 passer9527 创建的主题 问与答 一个疑惑:为啥很多初创公司不选择最主流的技术栈?
初创时期,恨不得单枪匹马能用 python 的就两周撸一个原型出来。等产品有市场了,有钱了,再找十个 java 程序员重构不好吗?

讲真,你看看程序员的薪水,再看看初创时期是找一个 python 大后端合算,还是十个 java 标准螺丝钉合算。
2021-08-13 14:29:07 +08:00
回复了 passer9527 创建的主题 Java 最近发现 Java 的 easyExcel 库相当不错
pandas 确实慢。大量操作要扫 index
2021-08-13 10:04:01 +08:00
回复了 mirone 创建的主题 程序员 Milkdown 中文文档
@mirone QAQ 好的这就去提(顿首)
1 ... 54  55  56  57  58  59  60  61  62  63 ... 200  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   736 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 34ms · UTC 20:28 · PVG 04:28 · LAX 13:28 · JFK 16:28
Developed with CodeLauncher
♥ Do have faith in what you're doing.