大一的时候还开了编程课,学的是FORTRAN77,这是我唯一真正科班学的编程语言。现在再让我用FORTRAN编程序估计不能马上动手了,得先重新看一下教程,不过我觉得FORTRAN77不难,基本上等同于BASIC,即便没学过看几天应该也可以上手编程了。这是一个以科学数值计算为主要目的的编程语言,我工作后还见到有老师傅使用这个语言进行工程上的计算。由此我想说,大家经常争论的时候动不动就说“XX语言将死”或者“XX语言必死”之类的话真的是太无聊了,连这么古老的语言现在仍然还有用武之地,那些现在用户量这么大的语言哪那么容易就死掉。
当时不懂编译原理,只知道FORTRAN程序编写完成后先要FOR1一下,然后PAS2一下,然后再LINK一下,其实现在我也不知道这个FOR和PAS到底干了些什么。当时的理解就是我写的程序计算机是看不懂的,必须用这三个程序给变成二进制执行的代码,现在再看的话,当初的想法也没错,呵呵。
说到FORTRAN了,就想起前段时间CSDN上讨论为什么循环的变量通常是I,J,K的问题。其实这还真有极大的可能与FORTRAN有关。FORTRAN是世界上第一个高级编程语言,它有一个I-N规则,就是以I、J、K、L、M、N开头的变量默认是整形,其它的则默认是实形。我不知道别人是什么习惯,反正我第一次写循环的程序的时候,用的就是I,没什么理由,就是方便。在我见过的FORTRAN小程序中,还真没有特意去把abc之类的字母定义成整形使用的,人总是很懒的,既然有默认的那么少写一行代码不是很好么。嵌套循环自然而然的就是I,J,K,我想这是人的共性吧。后来这些使用FORTRAN的人再去用别的语言的时候,也就习惯性的用i,j,k了,毕竟FORTRAN比其它中高级语言早出现了好多年,已经足够形成一种习惯了。
除了FORTRAN外,我们还有汇编课程,汇编其实学起来一点都不难,就那么几个命令,不就是在寄存器和内存之间不断的搬运数据然后运算,不过真要用汇编编个程序,可真难,很佩服吴晓军能用全汇编写出2.13。很多人在进行语言性能争论的时候往往会提到汇编和机器语言,并且认为机器语言要比汇编性能高,其实我倒是一直觉得汇编语言和机器语言基本上算是一回事,汇编语言不过就是机器语言的助记符而已。这是我当年学汇编的时候的感受,也许不正确,所以加重一下,有大牛的话欢迎指点。汇编语言虽然考了很高的分数,不过说实话,不会用,就好比我知道怎么把砖用水泥连接在一起,但我却无法盖成一栋大厦一样,最多只能砌个小矮墙。用汇编写个加减法、1到100的求和还勉强,干别的就不行了,不过如果是算数的话,我用FORTRAN就可以了。所以汇编么,尽管是我所有计算机相关课程中考试分数最高的,基本上还是被我扔了,因此到现在基本上就属于完全不懂了。
用FORTRAN做过一个游戏,由于FORTRAN没有任何图形处理的功能,所以游戏的一切都是用字符组成的。首先是用字符显示出一个地图,不同的地点之间有道路连通,然后玩家用字母A代替,玩家需要不断的到各个地方去触发事件,赚钱,最后到指定地点买蛋糕送到某地,我记得最后不是送给女朋友,送给谁就不知道了,反正把蛋糕送到就算是完成任务了。当时还没玩过文字MUD,现在回想的话,还真有点象MUD。我对这个游戏不满意,毕竟每执行一步操作就要滚屏重新显示地图,不像游戏,不过我的同学们倒是玩的还挺来劲,评价是不错,挺好玩。不行,游戏不应该是这个样子的,这离我当初说要做比VR战士更真是的格斗游戏的目标差得太远,FORTRAN不行,那就换。
按照正常的行文规则,下面应该写我换别的语言,不过我打算继续先写FORTRAN。
FORTRAN在我整个大学期间一直都在用,用来进行工程计算,特别是后期学的有限元计算,用处很大。当时我们的老师说我们系有一套有限元计算的FORTRAN程序,当初花了50万美金买的,谁想用的话可以去拷贝。不过我周围的同学没人去拷,我当时还真是有些动心了,不是因为这东西的价格,而是对这套东西本身有些兴趣。不过最后大家都没拷,我也有些心疼我的磁盘,我倒是不记得是9MB的容量还是9张盘了,如果是9MB容量的话至少需要19张软盘才行,反正最后是放弃了。在我工作后,我们工厂的很多有限元计算都需要拿到我母校去计算,不过最近几年就不用了,除非技术含量很高的有限元计算,否则工厂自己用买的可视化有限元计算软件都可以完成了。
用FORTRAN编的最后一个较大的程序应该是计算柴油机活塞燃烧时的热应力分析,是一个有限元计算方面的程序。我曾经在CSDN的某个帖子中说过很多专业方面的编程都是由专业人员自己写程序的,而不是找专业程序员来完成的。并说了一句:毕竟让一个专业人员学会编程序比让一个程序员学会专业知识更容易,由此还引起了一点口水。工程方面的计算其实大部分都是纯数值计算和分析,学会这种编程很简单,像我说的这种需求,确实是专业人员来做才是最为合适的,所以我所在的大学基本上工科专业学生都是要学计算机编程的。再扯远一点,我觉得计算机专业与外语专业有些类似,越来越多的其它专业的人员会掌握计算机编程和外语知识,所以有些原来需要计算机或者外语专业的人才能完成的事情由专业人员本身就可以做到了。就好比原来我们每个科室都配备打字员,因为当初在电脑上打字不是谁都会的,但是现在,科室里面都没有打字员了,只有对打字速度要求特别高的部门才会用到。英语也是,原来技术人员与外国技术人员交流需要翻译,但是现在很多时候不需要翻译,由技术人员自己来交流就可以了。希望大家理解我的意思,绝对没有任何对计算机专业人员不敬或者唱衰计算机专业的意思。其实大家换位想一想,那些翻译得比较好的计算机书籍,有多少是由英语专业的人翻译的?还是计算机专业的人并且懂英语的人翻译得更好一些吧。希望莫要因此引起太多的口水。
分享到:
相关推荐
雷军回忆了自己从大学开始学习计算机到现在快十年的编程生涯,分享了自己的编程经验和感悟。 首先,雷军认为编程是一条漫长的道路,需要付出很多努力和汗水。编程不仅仅是写代码,还需要具备艺术创作的特点。他比较...
NDC是一个标准的坐标系,其范围通常为[-1, 1]×[-1, 1]×[-1, 1]。视见体归一化使得不同的视见体能够被统一表示,方便后续的光栅化处理。 ##### (四)物体坐标到屏幕坐标的转换 **题目内容:** 从物体坐标到屏幕...
在2022年的IT行业中,作为一名Java程序员,良好的英语能力是必不可少的。自我介绍是展示个人能力和个性的重要途径,以下是一个可能的Java程序员的英语自我介绍示例: 尊敬的面试官, 我出生在中国西北甘肃省的农村...
此外,书末还附有一篇“大学十年”的回忆录,作者分享了自己在浙江大学学习期间的心路历程,增加了书籍的个人色彩和情感深度。 ### 结语 《软件工程思想》不仅适合软件开发人员阅读,对于软件工程专业的学生、项目...
【我的大学authorware】是一个基于Authorware开发的多媒体应用程序,它详细记录并展示了作者的大学生活。Authorware是一款历史悠久的图标驱动的编程环境,专为非程序员设计,用于创建交互式、多媒体丰富的软件和信息...
【东北师范大学计算机复试笔试题(回忆版)】 这篇文档包含了东北师范大学计算机专业复试笔试的部分题目,这是一份宝贵的复习资源,对于准备此类考试的学生来说具有很高的参考价值。笔试题目的内容可能涵盖了计算机...
以下是对2017年山东大学操作系统期末试题中涉及的一些知识点的详细解析: 一、名词解释 1. 抢占(Preemption):在操作系统中,抢占是指一个正在运行的进程被系统强制暂停,以便让优先级更高的进程获得处理器。这...
### 广东工业大学-2010计算机系统结构试题知识点解析 #### 一、基本概念解释(20分) **1. 计算机系统结构、计算机组成与计算机实现** - **计算机系统结构**:指的是从程序员视角所看到的计算机系统属性,包括...
7. **情感与回忆**:大学生活中的友情、爱情以及共同度过的时光,构成了宝贵的回忆。在IT行业,同事间的互助和团队文化也是工作满意度的重要部分。 8. **梦想与追求**:主人公期待着下一站的生活,这反映了对未来的...
Python是当前最流行的编程语言之一,对于程序员来说,掌握Python是非常必要的。在这篇文章中,我们将从Python期末考试题中提取相关知识点,并进行详细的解释。 1. 位运算和数字系统 问题一:你正在进行一项调查,...
《ACrush 楼天成回忆录》是一本深度探讨编程艺术与 ACM 顶级程序员成长历程的书籍。楼天成,作为中国乃至全球 ACM(国际大学生程序设计竞赛)领域的杰出代表,他的故事对于想要在编程领域深耕的人来说具有极高的启发...
这篇大学毕业祝酒辞中,蕴含了丰富的大学生活回忆与对未来的展望,同时也揭示了一些与IT行业相关的知识点。以下是对这些内容的详细解析: 1. **团队合作与友情**:大学四年的生活,同学们共同经历了许多挑战,如...
7. 时间管理:从大学生活的回忆中可以看出,时间管理是一项关键技能,这对IT从业者尤其重要,因为他们经常需要处理复杂的项目,平衡工作和个人生活。 8. 沟通技巧:作为学生代表发表致辞,展示了良好的沟通技巧,这...
程序员考试刷题R 中的统计推断 用于在 R 编程语言中执行统计推断的包。 动机 尽管 R 编程语言包含用于计算常见推理测试中使用的分布和值的各种内置函数,但我无法费心记住它们,因为它们没有任何一致的命名约定。 ...
在软件资格水平考试中,我成功通过了程序员级别的考试,这证明了我在实际编程和软件开发方面的扎实功底。同时,我具备良好的网络技术能力,能够建立和维护局域网,处理软硬件故障,确保网络的稳定运行。我对HTML、...
2022年的大学计算机专业个人职业规划需要考虑当前行业动态、市场需求和个人兴趣,以便做出明智的决策。以下是对计算机专业职业规划的一些详细分析: **一、行业现状与趋势** 1. **IT人才短缺**:全球范围内,IT...
1. **自我分析** - 性格分析:外向、善于社交,这对于团队合作和人际交往至关重要,特别是在IT行业中,沟通能力往往比技术能力更为重要。 - 学习态度:刻苦努力,这是成功的关键,因为计算机科学领域更新迅速,...
此外,这份总结还反映出,程序员对于自身在软件开发过程中的不足有着清晰的认识,他意识到在大学期间的学习可能不足以应对实际工作中的复杂问题,因此他珍视这次试用期的机会,将其视为从校园到职场转变的重要阶段。...
我获得的软件资格程序员证书证明了我的专业技能,而英语四级和六级的成绩单则表明我具备良好的英语读写能力,可以流畅地进行商务沟通。 最后,我想表达的是,无论结果如何,我都会持续关注贵公司的成长,并衷心祝愿...
1. 计算机专业基础知识:自荐信中提到的专业知识包括C语言、汇编语言、编译原理、Powerbuilder、数据库原理、面向对象编程(C++和VC++)、Delphi编程、ASP动态网页及网络数据库。这些都是计算机专业学生需要掌握的...