编程十年 (3):初识计算机
编程十年 (3):初识计算机
1995年,上初中,凡是带电的玩意都喜欢。担任班里电教课代表,就是负责帮老师放放幻灯换换灯管什么的。
1996年,初二。学校开了一门新鲜课——打字课。课程的内容是用英文机械打字机打字,教材也是针对机械打字机的。这门课本来是有上机实验部分的,但因为学校机器资源有限,所以一直没有安排上机,因此上课的内容就是背键位。学习英文打字不像学五笔那样有口诀,所以键位只能生背。还好书的封皮上画着一个1:1的打字机键盘,可以比划比划。
这门课虽然有些枯燥,但的确帮我打下了扎实的基础。在高一开设了计算机课之后,当同班同学还在为背键位发愁时,我已经可以把精力放在写程序上了。
当然,这门打字课并不是一直这么枯燥的。突然有一次上课之前,老师到班里来说,这节课要去机房上机。当班长把大家组织起来赶到机房时,发现桌子上摆着的并不是课本上画着的那种机械打字机,而是——电脑。
后来从小道消息得知,是因为学校快到130年校庆了,美国友人送给学校一批386计算机(够蒙人的,那会儿486都出来多少年了吧),所以就把高中部计算机实验室里的老式计算机淘汰了,正好给我们初中小孩儿上打字课。
这是我第一次见到真正的计算机,已然记不得是什么牌子了,只是依稀记得它们的样子。显示器是单色的,但并不是“黑白”的——有字的地方是亮绿色的,没有字的地方是墨绿色的。机箱上只有一个5.25寸的软盘驱动器,然后从串口用排线连接着放在桌子上的外置3.5寸软驱。键盘是全机械式的,一按就“嘎巴”响的那种(现在觉得还是那种键盘有感觉)。
那个时候也不懂什么操作系统、开发环境的。只是听同学说,我们用来练习打字的这个环境,叫BASIC,还给我们演示了一些小程序。我记得当时就学会了这么几个命令——CLS、LIST、PRINT、GOTO和RUN(等我真正学QBasic的时候,除了PRINT还偶尔用一下之外,其他指令都没用了……)。那个版本的BASIC,每一行都是要加行号的,而且每一行前面都有一个“]”提示符。
记得同学给我演示过的程序里,有一个是计算1到100的累加和,自然是用FOR循环写的。不过我当时既不懂“FOR”(英语烂)也不懂“循环”,但是既然“我也会”的牛逼吹下了,自然得想办法圆一下。于是,“]100 PRINT 5050”,然后CLS清屏,把同学叫过来,再敲个RUN,就有正确结果了。不过同学毕竟比我先接触的计算机,直接一个LIST命令我就原形毕露了。
不管怎么说,谢谢这个杜撰出来的“同学”(有几个同学当时家里就有计算机了,而且还略懂编程,为了叙事方便,把他们集中成了一个人)和初中的打字课,让我对计算机和编程有了一个初步的认识。
哦,对了,这个计算机还有个神奇之处就是能输入中文——但当时我是不知道怎么输入的,有同学会输入,现在回想起来应该是区位输入法,因为直接用数字小键盘就能输入。更为神奇的是,当使用Backspace键删除文字的时候,中文是半个半个删除的……真的是半个字,而不是变成半拉乱码(后来在DOS上写程序时发现,如果处理不好汉字字符的删除,也会造成类似的效果,但剩下的半个字会变乱码)。这让我在当时就对“一个汉字相当于两个英文字母”有了个感性的认识。
很快,一个学期过去了,打字课也结课了,再也没有摸电脑的机会了。于是我又回到无线电和电子制作的怀抱。那个时候也曾想过拥有一台电脑,也向别人打听过电脑的价钱,有个哥们老和我一起玩电子制作,不过因为比我懂得还少所以很崇拜我——告诉我,只要1000多块钱就能买到电脑。我琢磨着虽然老爸一个月只挣800多块钱,可也不是买不起啊,就回家跟我爸说了。隔天老爸黑着脸就回来了,说电脑确实有1000多块的没错,可那是美金……
于是彻底断了电脑的念想了。不过,那会看得最多的杂志是《无线电》和《电子制作》,上面总有介绍硬件的文章,像什么单片机啊、EEPROM存储器啊之类的,竟然无意间攒下了一些硬件知识,虽然对于搞硬件来说是不够的,但对于后来学习编程还是帮助不小的。