频 道 直 达 - 新闻 - 读书 - 培训 - 教程 - 前沿 - 组网 - 系统应用 - 安全 - 编程 - 存储 - 操作系统 - 数据库 - 服务器 - 专题 - 产品 - 案例库 - 技术圈 - 博客 - BBS
51CTO.COM_中国领先的IT技术网站
找资料:

二十年前的程序设计回忆

作者: 王钧 出处:CSDN 2008-03-30 10:45    砖    好    评论   进入论坛
阅读提示:1987年秋,我刚上大三。某日,班主任王老师,一位吉林大学物理系高材生出身的专业课老师,通知我随他做工业控制项目。从此,开始了我七年的Z80、8088汇编语言程序设计工作。

1987年秋,我刚上大三。某日,班主任王老师,一位吉林大学物理系高材生出身的专业课老师,通知我随他做工业控制项目。从此,开始了我七年的Z80、8088汇编语言程序设计工作。

说是程序设计,当时可没有现在这么好用的设计语言、设计环境。我参加的第一个项目是棉纺厂织机监测,从电路板,到监控程序,全部自己设计。电路板要派人到河北青县去制板,几周能做好,自己再坐公共汽车去取回。之后再做轧染机监测项目,这是我真正独立地进行程序设计的开始。当时连续几个月,下午五点一过就进实验室(白天有别的工作),不抬头、不离座位,通常干到凌晨两、三点,有时到四、五点,与计算机连续斗智。连续八、九个小时坐在那不动,一旦被值夜的老大爷多次催促后无奈地站起来,各种生理的需求全来了:喝水、去洗手间、吃东西、活动筋骨、照顾一下干涩的眼睛。但坐在那儿的时候全然不知,想想可怕,就是睡觉还能被去洗手间的需求唤醒呢,但程序设计时这类需求唤不醒人。

编程序,则是先在系统机上设计程序、汇编,然后用EPROM擦写器把汇编好的程序代码写入EPROM,再把带着监控程序的EPROM插到工业控制机上测试。若通过,就进入下一段程序的编写。但未通过的时候居多,只好用EPROM擦写器擦除监控程序(紫外线擦除),下次再用,还得省着用,因为一个EPROM芯片很贵、不能无限次擦写。呵,许多工程意识就是这时建立的,得有成本概念呀!

那时的系统机程序设计工作也不轻松,一开始用行编缉器EDLIN(DOS环境),一行行地写、删。记得用的首个全屏幕编缉器是VI,用上下左右的光标键控制,可全屏幕编缉,觉得好用得不得了。存储全是五寸半的软盘,读写(尤其是写)噪音特别大、特别慢,还易折损、易坏,至少双备份,费时费力。印刷电路板的设计程序一开始只能设计两层电路,后来变成能设计三层、四层的。

当时芯片的集成度低,CPU、计时器、输入输出管理器等都是独立的、形体很大的芯片,要自己设计电路,再把芯片焊上去,焊接的功夫都是那时练的。各种抗干扰措施,包括高低容量的电容器、电阻、电感,还有保险丝、通风降热用的电扇、防尘网、防硬撞击的机壳等等,都要自己设计上去。然后到中关村采购(全国大概就中关村有三两家店卖这些东西,只有科海一家货较全)。那时的中关村电脑商店没几家,买电脑、打印机,交款后常要等上几个月,也没啥售后服务。每次来中关村最享受的是白石桥路(现在叫中关村大街)上的林荫道,最为难的是住和吃。一天补助16元,吃住行全在里面了。中关村饭馆只有两三家,最有名的是颐宾楼,卖的油水巨大无比的低质饺子,两三元一份,吃几口就腻得你不再想吃。从北京站下火车后,得先坐103无轨电车到动物园,再倒332路到中关村,全程得一个多小时(幸好不像现在这样堵车)。就是这样,来出差还算机会呢——能了解点最新的技术动态、设备动态。当时卖东西的能告诉顾客点技术、设备动态,还得看人家高兴不高兴呢。电脑类报纸、杂志非常少,信息也不全。网,还没人知道呢!

那个年代内存特昂贵,所以程序设计里如何能有效使用一两个,最多8个字节的内存,是程序设计最大的诀窍之一。谁在合理调度内存上过不了关,就甭想设计程序的事儿。堆栈被广泛使用,以保护内存里的参数。有时程序入口上做了PUSH,出口时少POP了一句,结果就出不来。这类毛病又不太好查。

汇编语言程序设计最终生成的代码量很小,1K左右的程序就不算小了,得让你忙上两三个月。最耗时的是调试。记得有一次程序总不能通过,左查右查,一个月下来,软件设计的毛病全挑出来了,还是通不过,伙伴们还时有抱怨和催促——耽误总体进度,那叫郁闷呀!连睡觉都在编程序。真别说,有些问题还真是睡觉时想出来解决之道的,半夜起来写下来,再睡,第二天编过去了,那叫兴奋!后来实在没办法,只能怀疑硬件的问题了,拿逻辑表一测,定时器的一个输出口不管有没有输入指令,都在不停地输出信号。而那个口是用来管理不可屏蔽中断的。问题找出来了,心中的石头才落地,那一夜睡得那叫甜呀!

从87年到94年,我的业余时间大都花在这些事情上了,七年的重复工作过来,至今忘不了Z80、8088汇编的指令。这些工作从基本的硬件设计、抗干扰措施,到软件设计、调试,全程下来,让程序员们对计算机的各个部分没办法不了解,倒是很锻炼人。现在回想起来,那感觉也不错,很有些自豪感——大概凡是很累人的事儿,容易让人记忆的原因吧。

【责任编辑:飞儿 TEL:(010)68476606】

专题
程序员如何成长?
2007年互联网大会
精通Ajax——基础概念、核心技术与典型案例
2008年春季英特尔信息技术峰会(IDF)
C专家编程
我也说两句

匿名发表

(如果看不清请点击图片进行更换)


中 国 领 先 的 IT 技 术 网 站 ·
技 术 成 就 梦 想
订阅技术快讯
电子杂志下载
名称:SQL Server数据库管理精品黄皮书
简介:书中文章经过精挑细选,便于用户能根据自己的实际工作和学习,快速在本书寻找到相关资料。内容涵盖了SQL Server的安装与升级、语句查询、数据备份和恢复、自动化任务、数据同步、数据字典、安全和预防、性能和优化、集群等各方面应用信息,以及DBA管理人员在数据库管理工作中
名称:2007路由技术大全
简介:《2007路由技术大全》由51CTO.com网站特别策划制作,该书包括路由器技术、路由器产品、路由器配置、安全设置、路由器故障处理、路由器密码恢复,以及广大网友在实践使用中的心得经验和技巧文章,内容注重实用性,适用于初学者入门,也适合多年从业者提高,是一本实践和理论完
名称:网络安全精品应用黄皮书
简介:《2007精品网络安全黄皮书》包括了9个大类24个小类, 800余篇文章,内容包含了熊猫烧香病毒、DDOS攻击、ARP病等热点问题的介绍及解决方案。从病毒查杀、防范、系统、数据等各方面的安全设置到黑客技术的了解、防范,涉及到了安全应用的全部领域, 由浅至深内容全面。
2008年春季英特尔信息技术峰会(IDF)
2008年春季英特尔..
技术人求职简历完备手册
技术人求职简历完..
国际文档格式标准开战
国际文档格式标准..
· 国际文档格式标准开战
· WCF开发基础
· Visual Studio 2005开..
· Linux——从菜鸟到高手
· 如何优化IT 控制能耗
· SQL Server入门到精通
· SQL Server 2008/2005..
· 贝恩资本携手华为22亿..
· ARP攻击防范与解决方案
· 华为员工自杀频频拷问..
· 初探敏捷开发
· 体验Visual Studio 200..
· SOA 面向服务架构
· CISSP认证成长之路
· 隐私保护技术探讨
· 珊瑚虫QQ作者侵权案开庭
清除流氓软件——51CTO特别专题
清除流氓软件——..
ARP攻击防范与解决方案
ARP攻击防范与解..
iSCSI应用与发展
iSCSI应用与发展
· iSCSI应用与发展
· SQL Server 2008/2005..
· SOA 面向服务架构
· SQL Server 2008/2005..
· iSCSI应用与发展
· RAID——磁盘阵列基础
· 中间件应用技术专题
· SQL Server入门到精通
· 病毒查杀专题
· 国际文档格式标准开战
· Linux防火墙
· 打造安全服务器
· Sniffer安全技术从入门..
· SOA 面向服务架构
· ADSL应用面面俱到
· 入侵防护系统(IPS)初探
ARP攻击防范与解决方案
ARP攻击防范与解..
SQL Server 2008/2005全解
SQL Server 2008/..
iSCSI应用与发展
iSCSI应用与发展
· iSCSI应用与发展
· 中间件应用技术专题
· SQL Server入门到精通
· SQL Server 2008/2005..
· SOA 面向服务架构
· iSCSI应用与发展
· RAID——磁盘阵列基础
· 身份认证技术
· 病毒查杀专题
· 清除流氓软件——51CTO..
· Sniffer安全技术从入门..
· SOA 面向服务架构
· 了解统一威胁管理(UTM)..
· ADSL应用面面俱到
· ADSL应用面面俱到
· 反垃圾邮件技术应用