我开发了一个基于 Beancount 的账本托管服务 HostedBeans,欢迎大家来了解纯文本复式记账并试用我的服务。
归档 2012 年 11 月

近期计划 2012.11

RootPanel应该说是目前最重要的项目,我目测这周,或者最迟下周,RootPanel的基本功能可以搞定。前端包括在Web面板上创建和编辑网站、修改SSH/MySQL密码等等,后端包括生成Nginx/Apache2的配置文件、管理员后台。

搞定之后就可以开始内部测试了(欲参加请联系我,免费且有礼品),由于承诺过12月1日正式上线,好像测试有点仓促。测试过程中,简单重构一下代码,再添加其他功能,比如资源和流量监控、PPTP/Mongo支持等。

这次写RootPanel,也发现了LightPHP非常多的问题,最近还看了一些PHP方面的书,有些新想法,LightPHP将会有很大的变化。LightPHP重构完成后,可能着手完善JyBBS,思来想去,还是自己写个比较靠谱。

还打算对jybox.net进行改版,不光是把phpwind换成JyBBS,重心也会改,以提供一些公益性质的服务为主,以前whtsky和我这么说过。


还有零毫秒,目前一方面在等Qt5——其实这不是理由,Qt5 Beta早就出了。

另一方面在补充有关数字证书/密码学、ipv6/p2p网络方面的知识。

在完成RootPanel后,网站方面的改造工作,和零毫秒并行,零毫秒才是真正令人(只有我?)兴奋的。


我还打算入门一下一些常见的技术,包括我以前不看好的,多了解一点,反正我有时间。

参见

C++ 讲稿 3.计算机如何储存数据

By 精英王子

CC-BY-NC-SA(署名-非商业性使用-以相同方式共享) 3.0

注:解说在图片下方

原始幻灯片(持续更新):https://docs.google.com/presentation/d/1-9F3hQxXXlFk_ftLbh5C1gKnKcw–tnODPcD40TEg7g/edit

解说写在讲者备注

1

左下角,我们平时能够看到每个文件都有一个数字来表示他们的体积,数字后面还有各种不同的单位。

这节课我们就来了解计算机如何储存数据,这一节并不限于C++,所有的计算机、编程语言都是这么做的。

2

位是表示数据最基础的单位,他就像一个开关,只能表示两种状态之一,计算机很喜欢这种表示方法。

一个位只能表示两种状态之一,但通过将多个位组合在一起,即可表示更多种状态之一。

计算机通过将多个位(通常是几百万、上千万)通过一定结构,组合在一起,来表示数据。因此计算机以二进制为基础。

3

二进制数有很多特殊的性质,例如0.1在十进制中是有限小数,而在二进制中是无限小数。

十六进制数保留有二进制数的性质(因为十六是二的整数次幂),而且表示起来比二进制简短,所以有时我们也使用十六进制。

为了不至于把二进制、十进制、十六进制搞混,我们在书写的时候通常会在二进制数后加B作为后缀,在十六进制数前加0x作为前缀,十进制数原样书写。

或者用下标来表示进制。

4

所谓浮点数就是说小数点的位置是可以改变的,通过修改指数的大小,即可改变小数点的位置。

通过科学计数法,一个小数被划分为三个部分,它们都是整数,所以我们可以按照之前提到的储存整数的方法进行储存。

5

6

通过前面的介绍,可以得出这样的结论,计算机本质上储存的是数字,二进制数字。

所以如果想让计算机储存文字,必须指定一种从数字的字符的转换方法。

在ASCII中,每个字符对应一个二进制数字,通过储存这些数字即可表示这些字符。

特殊字符即各种无法直接显示在屏幕上的字符,如回车、换行等。

7

GB18030收录了7万多个汉字,自然无法用一个字节表示 (一个字节只能表示255个字符之一),所以我们需要用多个字节来表示一个汉字,所以GB18030属于多字节字符集。

同一个数字,在不同的字符集里面可能会表示不同的字符,将一个本来是GB18030(中文)编码的文件以日文字符集打开,就会看到日文字符,但这并不是翻译,而是乱码。

在一个使用GB18030(中文)编码的文件中,你无法插入日文字符,因为GB18030是中文字符集,其中没有日文字符。

为了解决这种混乱,成立一个叫Unicode的项目,他们指定了一组字符集,收录了世界上所有文字的字符。其中包括比较常用的UTF-8字符集。

8

我们时常在单位的前面加上一个前缀(“国际单位制词头”)来对单位放大或缩小一定的倍数。

对计算机中的字节也是一样,我们用1kB表示1000B,用1MB表示1000KB.

发现问题了么?你一定听说过计算机使用2的10次方——1024来进行进位。但是物理学早就规定k表示1000倍,

于是,大家又创建了一组新的词头:Ki、Mi、Gi等,他们以1024来进位而不是1000.

9

在大多数情况下,KiB、MiB中的i会被省略,甚至大多数人都不知道还有个i,有些软件也直接省略了i,但也有一些软件将i完整地写了出来。

10

11

理想

今天我们班开了一个“花有重开日,人无再少年”的班会,主题也就是梦想、理想。我觉得梦想和理想这两个词还是有区别的,前者更倾向于无法实现、不受自己控制的;而后者倾向于可以通过努力达到的。

似乎在班主任、班会的组织者、来我们班的实习老师、大多数同学的眼中,理想一定是要去上某个大学,而之后,就没有了。

实习老师讲他如何刻苦学习,如何拿到了众多奖项;幻灯片上提到了最近新闻中的“清华学霸”,还展示了她们的日程表。我承认他们都是优秀的,但是一定要要求每个人都这样做么?

主持人请我们班一直以来成绩排名第一的龙哥来谈谈自己的理想,龙哥说“希望有个健康的好身体、好好活着,身体是‘革命’的本钱”,大家都笑了。虽然这其中有玩笑的成分,但“有个健康的身体”、“好好活着”就不能是一个人的理想么?如果这话不是班级成绩第一,而是成绩靠后的同学说出来的,还会仅仅是善意的笑么?

再或者,有些人喜欢钱,即使已是富翁,还是爱钱,但他们一定是庸俗的么?可能赚更多的钱是他们的理想,更多的钱可能只是符号,但那是个人能力的象征。

什么时候连“你的理想是什么?”都有了标准答案,你当这是流水线么。有人这样说:在教育的流水线上,我是一个残次品,但我庆幸,我是那个残次品。

再说我自己,上不上大学,我还没有决定,但这并不重要。能取得怎样的成绩,取决于人,而不是上不上大学。不上大学不等于停止学习,恰相反,那些抱着“上了大学就可以随便玩了”的家长和同学才是失败者。

毫无疑问,我对计算机/互联网方面兴趣很大,也投入了很多努力。IT界瞬息万变,我也无法预测几年后的前沿技术是什么。我希望我在经过几年的经验积累之后,能够自己开发(而不是给别人打工)出一款产品,能够有人用,有人关注,越多越好。钱不是我关注的,有人用户、有人关注,自然会有钱。

短期内,我希望在我高中毕业前完成“零毫秒”——一个去中心化的网络。

物以类聚,人以群分。劝我按部就班读大学的,身边一定都是普普通通,上学、工作的朋友;若我今后奋斗成功,我的身边也一定是自己奋斗、喜欢冒险的人;若我失败,身边也一定都是失败者。

没人能预见未来,按自己的想法奋斗而失败,和听从别人劝告违背自己意愿而失败,我觉得前者会让我更好受一些 …

如果我的理想既不违反法律,又不违背社会的道德约定。那么老师是不是应该给我点支持,或者至少不是阻碍。(假设)家长不支持我可以理解,因为这关乎我的未来和他们的未来。但与老师那一点业绩相对的,是我的一生。

精子生于 1995 年,英文 ID jysperm.

订阅推送

通过 Telegram Channel 订阅我的博客日志、产品和项目的动态:

王子亭的博客 @ Telegram


通过邮件订阅订阅我的博客日志、产品和项目的动态(历史邮件):

该博客使用基于  Hexo  的  simpleblock  主题。博客内容使用  CC BY-NC-ND  授权发布。最后生成于 2025-02-10.