1vonzhang 最近的时间轴更新
1vonzhang
ONLINE

1vonzhang

V2EX 第 510100 号会员,加入于 2020-09-28 01:07:56 +08:00
1vonzhang 最近回复了
4 小时 11 分钟前
回复了 GDance 创建的主题 iPhone 什么需求才会用巨魔呀
请问各位说侧载和破解的都是在哪里找的 ipa 资源?找到过一些 TG 群,但是并没多少东西,网上的教程大多数也都是针对双开的
23 小时 48 分钟前
回复了 q727729853 创建的主题 问与答 你们都用什么听歌软件?
绝大多数时候是 Spotify ,锁区或者曲库没有的歌收在了 YouTube 一个播放列表作为补充
摩托罗拉 X40 ,信号和支持的网络频段范围都很强。国行自带谷歌框架,可以刷欧版系统,也可以直接买面向海外市场的 Moto Edge 40 pro 。
282 天前
回复了 zsj1029 创建的主题 分享发现 啤酒推荐,中年男人的爱好
人在比利时,这边的啤酒以精酿为主,基本都是艾尔。

修道院啤酒里推荐:

- Karmeliet Tripel:这是修道院啤酒里我第二喜欢的,口感浓郁但是又不冲,香气十足,酸甜苦味的配比非常好,有一种特殊发酵的香味但轻飘飘的,没有发酵的臭味。
- La Trappe Quadrupel:少见的四料啤酒,劲儿确实大,但是四料的香型确实复合浓郁,口感十分细腻,全是超级细小的泡沫,慢慢地喝一口,像是香气在给舌头做按摩。
- Rochefort 10:楼上很多朋友推荐过了,我也投一票。
- Westvleteren 12:“全世界公认最好的啤酒”,大名鼎鼎的 W12 ,秉持传统的修道院酿造,没有大规模工业生产,只有提前几个月,靠车牌号预定才能买一筐。我一直没有机会喝,直到有个同事专门请假半天开车去买来,才有幸尝了一下。确实是被震惊到了,清爽和浓香竟然如此完美的结合,就像是只会水煮五花肉的我第一次吃到回锅肉。虽然销量十分有限,万能的淘宝应该可以买到。

其他的比利时啤酒,我推荐兰比克 Lambiek 。

兰比克是比利时特有的一类啤酒,特殊的地方是“露天酿造”。在布鲁塞尔附近的一条小河两岸的空气里有一种特殊的酵母菌,兰比克酒厂就在河岸把自己的啤酒敞着铺开,接触空气来发酵,因此兰比克有自己很独特的香气。

本地人管兰比克叫做“需要学着喝的酒”,类似于我们说的”会喝白酒的人才能喝出香味来“。我个人的体验也是这样的,喝了得有十几种之后,才逐渐觉得”这个酒除了酸,还是挺香的“。加上兰比克有很多系列都是主打水果香气,比如 kriek 是布鲁塞尔东北 Schaerbeek 的酸樱桃,framboise 是树莓或者叫覆盆子。

如果预算够,有渠道,可以直接喝三泉,Cantillon ,或者买几瓶窖藏也可以。(我第一次知道有啤酒也能窖藏多年、二次发酵的时候都惊了)

其他的推荐 Oude Gueuze Boon ,Geuze Mariage Parfait ,Oud Beersel 。也是属于需要慢慢品鉴才能决定出自己到底喜不喜欢的酒。

兰比克其实还有很多所谓入门酒,其实就是给“还没有学会喝”的大众准备的,要么调高了糖度,要么增强了水果味道。虽然这不是正儿八经的兰比克,但不妨碍他好喝!我其实这个类别喝的最多,推荐几款:Lindemans Pecheresse (桃子香型),Lindemans Faro ( Faro 是加了焦糖酿造的兰比克),Kriek Boon 和 Kriek Max (比较甜的酸樱桃酒,普遍受女士(和我)喜欢),Belle-Vue Kriek (偏酸,但是比较还原酸樱桃本来的味道)。

这里提一嘴水果香型的兰比克和所谓“果啤”的区别。果啤一般是酿造后加入果味糖浆等调味,而兰比克是酿造前期进行水果投料,酿造之后不再调味。比利时这边也有果啤,最受欢迎的是 Liefmans ,也是有名的女士酒,但是多喝一点就会发现区别还是挺明显的:果啤是水果味,而兰比克是水果香,果啤多喝一点就会有点腻腻的,像雪碧喝多了一样的感觉。

贴一张刚来比利时前半年喝的酒,基本都是修道院。 后来喝的都是酒瓶和酒杯单独拍照,大合照就只有刚开始的时候拍了:
@RipL #51 我了解到的是,每人每年有 50000 美金等值的限制(差不多 38000 英镑)。楼主,楼主家属,四个父母,加起来就有 20 万美金的额度了。完全是足够过渡阶段生活的。

如果之后入籍英国,是需要放弃中国国籍的,因为中国不承认双重国籍。而在你放弃中国国籍的时候,国家会给你一次不限额的机会。
2023-04-18 18:58:36 +08:00
回复了 OrdinaryMan 创建的主题 程序员 请教大家一个计算机组成原理的问题
很开心在 V2 看到这种讨论具体技术、理论的帖子顶上热门,这是我理想中 V2 的样子之一。

看了你最新的回复,区分字和字节的概念是正确的,整体的理解还是有些抽象。

我尝试举个例子。

假设我有一大片空地(整个内存),上面建了一排紧挨着彼此、大小一样的仓库(内存单元),一共 256 个仓库从 0 (0x00) 到 255 (0xFF) 连续编号(内存地址)。

如果我想让你去找到其中一间仓库,我需要给你一个 0 到 255 之间的门牌号。换成二进制就是 0000 0000 到 1111 1111 ,也就是说 [8 个二进制位就可以涵盖所有仓库] 。如果我只能把门牌号用 1 和 0 写在纸上(地址总线),而纸上只写的开 4 个二进制位,那我最多也只能写到 1111 (15),也就是说我没有办法指示你去 16~255 这些仓库;反过来,如果纸上最多能写上 16 个二进制位,因为我们最后一个仓库的门牌号是 255 (0000 0000 1111 1111),所以前八位永远是 0 ,永远用不到。

这就是你在某层楼回复说的 [地址总线的条数决定寻址空间大小] 。每条线上可以是 1 也可以是 0 ,一条地址线就是一个二进制位。地址总线越宽(位数越多),能写开的门牌号就越多,能找到的仓库就越多。

下面我们来区分“字节”和“字”。“字” 的概念但看内存没有意义,它主要来自于 [CPU 一次性处理的数据的大小(位宽)] 。

假设我们有一个工厂( CPU ),投入**一份原料**或者两份(运算数),同时说明要做的操作(运算类型),就可以生产出相应的产品(运算结果)。有的工厂比较大 (64 bit CPU),一份原料需要 8 个仓库装,也有的比较小 (8 bit CPU),一份原料一间仓库就够。我们这里规定,在这个例子里,**一份原料**需要 4 个仓库才能放得下( 1 word == 4 bytes)。我们就约定,把每份原料存在相邻的四个仓库里,比如仓库 0~3 存放一份,4~7 存放一份。

我们建仓库是因为有工厂,工厂是我们的核心,所以一切都以工厂运作的最小单位——一份原料的大小来定。这个就是“字” (word)。而“字节” (byte) 只是一间仓库的大小,永远是 8 位,和什么样的工厂没有关系。

工厂有两个进货口,有些产品需要一种原材料 ( e.g. 一斤生鸡肉,在工厂 “加热” 的操作下,生产出一斤熟鸡肉),有些产品需要两种( e.g. 一斤生鸡肉+一斤油,在工厂“加热”的操作下,生产出一斤炸鸡)。这里注意,工厂的产品有可能还要当作新的原料加工别的产品,要运回仓库储存,所以一份产品的大小也是 4 间仓库。

为了能*一次性*投入一整份材料(而不是 1/4 份、半份...),我们需要找到合适的卡车,一次性能装下一份原料、即四个仓库的卡车。用来运输原料(数据)的卡车就是**数据总线**。如果工厂投料生产的单位是 4 间仓库( 1 word == 4 bytes == 32 bits) 那么卡车的大小就是 4 间仓库 (数据总线是 32 位)。

下面我们来解释一下你问题补充里说的“每次取出一个字的数据送到数据总线传给 CPU ”。特别是这个“每次”。

这里需要一个背景知识。如果你没有学过数字电路,可以简单记住:电路的工作不是连续的,而是一下一下的,每一下都可以做一个最基本的动作。像一个“滴答滴答”走的时钟秒表。这个表走的越快(时钟频率越高),一定时间内能做的动作就越多。

你的理解抽象的地方,在于这个“每次”。因为对于内存那边和 CPU 那边,“每次”的概念可能是不同的( CPU 操作和内存内部的操作用不同频率的时钟)。在仓库那边有一个仓库管理员,时钟每滴答一次,他就把当前门牌号对应的仓库装到卡车上,并把门牌号+1 。一次操作的基本单位是一个仓库(一个字节)。4 个滴答之后,卡车才能装满。而在工厂那边,有另一个时钟,每滴答一次,工厂就把进货口的两卡车原料加工成产品。一次操作的基本单位是一个卡车( 4 个字节)。

当然了,如果一份材料就是一个仓库的大小,那么就不需要仓库管理员来管理“卡车到底装没装满”,因为卡车只能装一间仓库,装了就是装满,没装就是空的。那么这时候内存和 CPU 的时钟(或者“一次”)就是同样的速度、甚至可以用同一个钟。如果你不关心仓库里面具体发生了什么,只是从工厂的角度看,那么可以认为,工厂每运作一次,就有一卡车新的原料从仓库里出来,他们的“一次“也是一样的。

59 楼说的很好,他说的 “CPU 在访问内存时,一次可以访问多个字节,这就是字长的概念”,其实就是从内存外部,从 CPU 的角度看的,也确实是你在弄清楚具体内部细节之后,应该保持的角度。只是这种从外部看的角度不足以解释你对”8 位的储存怎么*一下子*取出 32 位甚至 64 位的数据“的疑问。

这里我们只讨论了数据内存,其实指令内存也是类似的,不管是冯诺依曼架构(放指令的和放数据的是两套不同的仓库)还是哈佛架构(同一片仓库,规定某些仓库用来放指令,某些仓库用来放数据)。题主读到取指令的时候,特别是有的指令很长、需要存放在两个连续的单元、读两次之后再执行指令,应该就能够更好的理解储存单元大小(字节)和运算单元大小(字)之间的差异了。



这个例子有很多不严谨的地方,因为主要目的是提供一个符合直觉的、具象的理解。题主学习计组主要目的也是从概念层面上理解计算机的组成,而不是现实生活中计算机具体是怎么造的。
例如:
- 字节永远是 8 位只是针对绝大多数通用计算机来说。
- 64 位 CPU 的计算机并没有 64 位地址线,因为没有那么大的内存,高位的地址线永远是 0 。
- CPU 和 ALU 在这个例子里当作了同一个东西处理,但其实数据加载到 CPU 的寄存器内,和 ALU 读取寄存器数据进行运算,是不同的事情。
- 内存和 CPU 速度不一样并不需要两个时钟,只要 CPU 每 4 个时钟周期才运算一次,就可以达到例子里的同步。现实生活中根据指令的不同,CPU 每几个时钟周期运算一次并不是固定的。
- ……
2023-04-11 17:07:27 +08:00
回复了 hlwjia 创建的主题 推广 抽奖送 5 份《海外远程工作指南》
1
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3260 人在线   最高记录 6543   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 13ms · UTC 12:46 · PVG 20:46 · LAX 05:46 · JFK 08:46
Developed with CodeLauncher
♥ Do have faith in what you're doing.