音乐CD:國樂共鳴(3CD)

2010年7月19日 21:07:01 | Posted by zeroxia | Filed under Entertainment

国乐共鸣CD购买记

这是我这辈子第一次买音乐CD,以前窝在老家的时候,买过一些磁带,那时候没电脑,没网络,不然也不可能去买的……不知道这次买的CD这个算不算支持正版,惭愧。

心情抑郁,听音乐或许是个稍微舒缓的途径,只有在这样的心境下,才发现所谓的流行音乐比起古典音乐来,根本不能算是音乐。

很多华语电影、电视剧里,都会有很悠扬的国乐,当你处于低落的心绪之中,对偶尔扬起的这类轻柔雅致的配乐,总是会产生意犹未尽,恨不能从头至尾静静聆听的遗憾。于是一直想着下点这样的纯音乐,却一直不得空闲与精力。

在深圳出差的时候,逛了一下附近的沃尔玛超市,看到一大摊子的CD中的这套“国乐共鸣”,遂毫不犹豫的买下了。谨此记之留念。

电视剧《手机》里,白石头的奶奶有句话:“这辈子,扎心的事儿太多了,要不把心活安了,活不下去。”这个老奶奶和那个黑砖头,看起来是两个极端,一个通情达理,啥事都看的透透的;另一个总是不着调,其实也是啥事都看的透透的。这两个人,大概是这个电视剧里最知道怎么活下去的人了。《叶问2:宗师传奇》里的洪师傅临死前说:“为了生活,我可以忍,侮辱中国武术就不行。”他这也是顺着自己的心,把心活安了。

实物图片


IMG_2675
#01 (set) 包装盒,硬邦邦的,不知道是纸还是塑料;那个“德国版”的铭牌够气派
Read more…

流浪记:所住小区周六掠影

2010年7月18日 01:07:07 | Posted by zeroxia | Filed under Life

周六,13:28,出门,准备去吃个午饭。

01_IMG_2698
#01 (set) 下楼看到的楼号指示牌
Read more…

易买得超市购物小记

2010年7月18日 00:07:23 | Posted by zeroxia | Filed under Life

周六,易买得

易买得貌似于5月开业,一直没进过那个超市,今天下午准备去买点日用品。

先是去交了电费,顺便把这个电费单子拿去办了易买得的会员卡。

P01_CC000129
#01 (set) 会员卡在手,为您省更多。就这么着加入了。(诺基亚E51拍摄)
Read more…

Perl: 身份证号码校验位的计算

2010年6月16日 11:06:04 | Posted by zeroxia | Filed under Computing

居民身份证由17位数字和一位校验码构成,其中校验码可能为0-9的10个数字或者是一个字符X,字符X为罗马数字,即数字10。由于校验码的计算是通过一个校验和除以11取余数得到的,所以有10种可能。

下面的Perl脚本用以计算给定的17位身份证号码(可以省去最后一位校验码)的校验码:

#!/usr/bin/perl
use warnings;
use strict;
 
## constants
my @factors = qw( 7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2 );
my @modsel  = qw( 1 0 X 9 8 7 6 5 4 3 2 );
 
## input
my $idnum   = 'ABCDEFYYYYMMDDXXXR';
my @digs;
if (defined($ARGV[0])) {
    $idnum = $ARGV[0];
    @digs = split '', $ARGV[0];
    unless ( ($ARGV[0] =~ /^[0-9]{17}(?:[0-9X])?$/i) &&
            (scalar(@digs) == 17 || scalar(@digs) == 18) ) {
        print STDERR "Invalid ID num input: $ARGV[0]\n";
        die "Usage: $0 IDNUM\n";
    }
} else {
    @digs = split '', $idnum;
}
 
## calculation
my $checksum = 0;
for my $i (0 .. 16) {
    # use "$factors[0] + 0" to force arithmetic calculation
    $checksum += $digs[$i] * ($factors[$i] + 0);
}
 
## checksum suffix
my $lastdig = $modsel[ $checksum % 11 ];
 
## result
print "ID num input: $idnum\n";
print "Checksum    : $checksum\n";
print "Suffix char : $lastdig\n";
 
exit 0;
 
## documentation
 
=item DESC
校验码是通过一系列数学计算得出来的,具体校验的计算方式如下:
 
  1. 对前17位数字本体码加权求和
 
  公式为:S = Sum(Ai * Wi), i = 0, ... , 16
  其中Ai表示第i位置上的身份证号码数字值,Wi表示第i位置上的加权因子,其各位对应的值依次为: 7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2
 
通俗解释:身份证第一位数字X7+第二位X9+第三位X10+第四位X5+第五位X5+第六位X8+第七位X4+第八位X1+第九位X6+第十位X3+十一位X7+十二位X9+十三位X10+十四位X5+十五位X8+十六位X4+十七位X2;计算出总和(用S)表示。
 
  2. 以11对计算结果取模
 
  Y = mod(S, 11)
 
通俗解释:用S除以11,看最后的余数。如果除尽,为0;余数为1,则计为1;最大余数为10;全部数字为0-10共11个数字。(用Y表示)。
 
  3. 根据模的值得到对应的校验码
 
  对应关系为:
  Y值: 0 1 2 3 4 5 6 7 8 9 10
  校验码: 1 0 X 9 8 7 6 5 4 3 2
通俗解释:余数为0,则校验码为1;依次类推:余数为1,则校验码对应0;以下:2--X;3--9;4--8;5--7;6--6;7--5;8--4;9--3;10--2。
 
如果校验码不符合这个规则,则肯定是假号码。
 
关于18位身份证号码尾数是“X”的一种解释:因为按照上面的规则,校验码有11个,而不是10个,所以不能用0-9表示。所以如果尾号是10,那么就得用X来代替,因为如果用10做尾号,那么此人的身份证就变成了19位,而19位的号码违反了国家标准,并且我国的计算机应用系统也不承认19位的身份证号码。Ⅹ是罗马数字的10,用X来代替10,可以保证公民的身份证符合国家标准。
 
根据〖中华人民共和国国家标准 GB 11643-1999〗中有关公民身份号码的规定,公民身份号码是特征组合码,由十七位数字本体码和一位数字校验码组成。排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位数字校验码。
=cut

8年了,杭州的移动手机号码纪念

2010年5月21日 22:05:48 | Posted by zeroxia | Filed under Uncategorized

今天打开浙江移动网站,登陆,准备换个套餐,这个杭州的手机号码就要闲置了,要不要注销,还真有点矛盾。

一不小心翻到了下面这么一个界面:

zerox-hz-mobile-no-start-date
#01 (set) “来电显示”这个业务的开通时间:2002/10/15 07:19:22,不禁让我想起了2002年10月,国庆长假都过去了,我终于得以提着两大箱行李到杭州报到,估计就是10月14日的下午(或者是傍晚),就在丹阳学园的门口,一个移动的摊位上,我买了这个手机号码,可能是50元吧,也可能是100元。

Read more…